bpf_cpumask_release(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

🌸 NAME 🌸

bpf_cpumask_release β€” bestie, this is the one that lets go of a BPF cpumask you grabbed earlier πŸ’…

(this is a page from the Kernel API Manual, and yes she is iconic for it)


✨ SYNOPSIS ✨

__bpf_kfunc void bpf_cpumask_release (struct bpf_cpumask *cpumask );

πŸŽ€ ARGUMENTS πŸŽ€

  • cpumask β€” the cpumask that's getting released. that's her. that's the one you're letting go 🫢

πŸ’– DESCRIPTION πŸ’–

okay so. bpf_cpumask_release releases a previously acquired reference to a BPF cpumask. very demure, very mindful β€” you took a reference, now you're giving it back πŸ”₯

and here's the part where it gets main character: when the final reference of the BPF cpumask has been released, it is subsequently freed in an RCU callback in the BPF memory allocator. so like, the actual free doesn't happen on the spot β€” it happens later, in that RCU callback, courtesy of the BPF memory allocator. no cap, that's literally it 😭✨

ngl the "final reference" thing matters β€” drop the last one and the object is on its way out, just not instantly. RCU callback era πŸ¦‹

πŸ‘‘ SEE ALSO πŸ‘‘

the whole friend group, fr fr πŸ§šβ€β™€οΈ


and that's the page, bestie πŸŽ€ this one lives at ./kernel/bpf, and it's dated October 2026 β€” screenshot it, cite it, send it to the group chat, periodt πŸ’œ

πŸ“¦ where this page comes from