BUILD_PERCPU_HELPER(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… BUILD_PERCPU_HELPER β€” like, the kernel API manual, section 9, bestie ✨

Okay so this is the page for BUILD_PERCPU_HELPER(9) β€” yes, all caps, yes it's a macro, and yes it's giving "tiny macro, huge responsibility" energy. It lives in the Kernel API Manual (section 9, iykyk) and honestly? Underrated. Let's get into it 🫢


🌸 NAME 🌸

BUILD_PERCPU_HELPER β€” literally the helper that calls a CDMM driver callback on the right CPU. That's the whole vibe check: right CPU, no cap πŸ’…


✨ SYNOPSIS ✨

BUILD_PERCPU_HELPER (_ret , _name );

That's it. Two args. She's lowkey minimal and I respect it so much πŸŽ€


πŸŽ€ ARGUMENTS πŸŽ€

  • _ret β€” the return type, and listen, it's literally just void or int. That's the whole list. Pick one, bestie ✨
  • _name β€” the name of the CDMM driver callback function. Yep, you're handing over the name and the macro does its little magic with it πŸͺ„

πŸ’– DESCRIPTION πŸ’–

So what does it actually do? It generates a specific device callback function for you β€” one that calls a CDMM driver callback function on the appropriate CPU for the device. And if that applies, it returns the result too. Basically it's the matchmaker: device ➑️ correct CPU, no awkward misdirected calls πŸ™ˆπŸ”₯

Like, you don't write the per-CPU wrapper by hand. BUILD_PERCPU_HELPER builds it. Main character energy fr fr πŸ‘‘


πŸ¦‹ SEE ALSO πŸ¦‹

Everything is connected, bestie, and this page is a whole friend group. Go meet them:


Pro tip from me to you: the manpage lists all of these as plain references β€” I'm not adding lore that isn't there. Go read them if you want the full tea β˜•

Okay that's the page!! Sending you off with the little footer deets so nothing gets lost: this one's from ./drivers/bus, dated October 2026, and it's filed under BUILD_PERCPU_HELPER(9). Slay, go build your per-CPU helper πŸ’–βœ¨πŸŽ€

πŸ“¦ where this page comes from