cpumask_or(9)
π cpumask_or(9) β the Kernel API Manual, but make it make sense β¨
okay so bestie, welcome to the group chat π«Ά this one lives in the Kernel API Manual and it is genuinely one of the cutest little helpers in ./include/linux/cpumask.h β it's giving "bitwise OR but make it CPU masks" and honestly? obsessed. π
β¨ NAME β¨
cpumask_or β the whole entire vibe is literally this:
*dstp = *src1p | *src2p
no cap, that's it, that's the function. π
πΈ SYNOPSIS πΈ
void cpumask_or (struct cpumask *dstp , const struct cpumask *src1p ,
const struct cpumask *src2p );
it returns void bestie, so don't go looking for a return value, it's not coming π₯ the result goes into *dstp and that's the whole plot.
π ARGUMENTS π
dstpβ the cpumask result π« this is where the answer lands, she's the main character of this operation, the output slot, the one who gets written to. periodt.src1pβ the first input πΈ one half of the OR, read-only,const, she is not being modified today.src2pβ the second input π¦ the other half of the OR, alsoconst, also just here to be read and combined. iconic behaviour honestly.
so likeβ¦ dstp gets src1p | src2p and everyone else stays exactly as they were. no drama, no side effects on the sources, we love a clean bitwise moment β¨
π SEE ALSO π
literally the entire cpumask cinematic universe, iykyk π
- Kernel file
./include/linux/cpumask.h: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_and(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_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)
like i said. the whole universe. go read them. slay. π₯
ngl if you only remember one thing:dstpgets the OR ofsrc1pandsrc2p, nothing more, nothing less. no cap. π
okay bye bestie, this page came from ./include/linux and it's dated October 2026, so yeah, freshly stamped and ready for you ππ
β¨
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms