cpuidle_coupled_clear_pokes(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– cpuidle_coupled_clear_pokes(9) πŸ’–

okay so bestie, we're in the Kernel API Manual today and this one is a tiny little function with a big job. buckle up πŸŽ€


✨ NAME ✨

cpuidle_coupled_clear_pokes β€” spin until the poke interrupt is processed


🌸 SYNOPSIS 🌸

int cpuidle_coupled_clear_pokes (int cpu );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • cpu β€” this cpu. like, this one. the one you're on. hiii πŸ‘‹

πŸ’… DESCRIPTION πŸ’…

so what it does is: it turns interrupts on, then spins until any outstanding poke interrupts have been processed and the poke bit has been cleared. that's the whole vibe. spin spin spin until the poke bit says bye πŸ’€

but here's the thing β€” other interrupts may also get processed while interrupts are enabled, so need_resched must be tested after this function returns, to make sure the interrupt didn't schedule work that should take the cpu out of idle. like, don't just wander off after this call, check need_resched first, i'm literally begging 🫢

ngl this is the important bit: returns 0 if no poke was pending, 1 if a poke was cleared. two outcomes, no in-between, periodt.

πŸ”₯ SEE ALSO πŸ”₯


that's the whole page bestie, go read the coupled ones next, they're iconic πŸ‘‘

sign-off szn: this lil cutie lives in ./drivers/cpuidle, dated October 2026, and it's cpuidle_coupled_clear_pokes(9) all the way down. mwah πŸ’‹

πŸ“¦ where this page comes from