for_each_cpu_and(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ‘‘ for_each_cpu_and(9) πŸ‘‘

okay so bestie, this is the for_each_cpu_and(9) page from the Kernel API Manual, and it’s giving β€œtiny loop helper with main character energy” πŸ’…βœ¨

πŸ’– NAME πŸ’–

for_each_cpu_and β€” iterate over every cpu in both masks. periodt.

✨ SYNOPSIS ✨

for_each_cpu_and (cpu , mask1 , mask2 );

🧚 ARGUMENTS 🧚

  • cpu β€” the (optionally unsigned) integer iterator. yes bestie, optionally unsigned, write that down πŸ“
  • mask1 β€” the first cpumask pointer 🫢
  • mask2 β€” the second cpumask pointer 🫢

πŸ¦‹ DESCRIPTION πŸ¦‹

This lowkey saves a temporary CPU mask in so many places. It’s equivalent to:

struct cpumask tmp; cpumask_and(tmp, mask1, mask2); for_each_cpu(cpu, tmp) ...

After the loop, cpu is >= nr_cpu_ids. that’s the vibe check, don’t forget it 😌

🌈 SEE ALSO 🌈

Kernel file ./include/linux/cpumask.h β€” bestie, the whole squad is here: cpumask_pr_args(9), cpumask_first(9), cpumask_first_zero(9), cpumask_first_and(9), cpumask_first_andnot(9), cpumask_first_and_and(9), cpumask_last(9), cpumask_next(9), cpumask_next_zero(9), cpumask_next_and(9), cpumask_next_andnot(9), cpumask_next_and_wrap(9), cpumask_next_wrap(9), cpumask_random(9), for_each_cpu(9), for_each_cpu_wrap(9), for_each_cpu_andnot(9), for_each_cpu_or(9), for_each_cpu_from(9), cpumask_any_but(9), cpumask_any_and_but(9), cpumask_any_andnot_but(9), cpumask_nth(9), cpumask_nth_and(9), cpumask_nth_and_andnot(9), cpumask_set_cpu(9), cpumask_clear_cpus(9), cpumask_clear_cpu(9), cpumask_test_cpu(9), cpumask_test_and_set_cpu(9), cpumask_test_and_clear_cpu(9), cpumask_setall(9), cpumask_clear(9), cpumask_and(9), cpumask_or(9), cpumask_weighted_or(9), cpumask_xor(9), cpumask_andnot(9), cpumask_equal(9), cpumask_or_equal(9), cpumask_intersects(9), cpumask_subset(9), cpumask_empty(9), cpumask_full(9), cpumask_weight(9), cpumask_weight_and(9), cpumask_weight_andnot(9), cpumask_shift_right(9), cpumask_shift_left(9), cpumask_copy(9), cpumask_any(9), cpumask_any_and(9), cpumask_of(9), cpumask_parse_user(9), cpumask_parselist_user(9), cpumask_parse(9), cpulist_parse(9), cpumask_size(9), alloc_cpumask_var(9), to_cpumask(9), num_online_cpus(9), cpumap_print_bitmask_to_buf(9), cpumap_print_list_to_buf(9).

✨ cute sign-off: source/version is ./include/linux, date is October 2026 β€” mwah, bestie πŸ’–
πŸ“¦ where this page comes from