ct_nmi_enter(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… ct_nmi_enter(9) β€” like, the Kernel API Manual page, bestie πŸŽ€

okay so this is a section 9 kernel API page, and honestly it's a tiny little icon. it's giving "short but essential." let's get into it ✨


🌸 NAME 🌸

ct_nmi_enter β€” the function that tells RCU "hey girl, we just walked into NMI context" πŸ’–

✨ SYNOPSIS ✨

void noinstr ct_nmi_enter (void );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • void β€” literally no arguments. nothing. zero. nada. it takes nothing and it needs nothing 🫢

πŸ”₯ DESCRIPTION πŸ”₯

okay so here's the vibe πŸ‘‘

if the CPU was idle from RCU's point of view, this updates ct->state and ct->nmi_nesting so that the RCU grace-period handling knows the CPU is, in fact, active. like, "not me being awake actually, notice me" 😭

this implementation permits nested NMIs β€” yes, NMI inception, we love to see it β€” as long as the nesting level does not overflow an int. and honestly? you will probably run out of stack space first. πŸ’€ so like, don't get too comfy with the nesting, bestie.

🚨 warning time: if you add or remove a call to ct_nmi_enter, be sure to test with CONFIG_RCU_EQS_DEBUG=y. no skipping the vibe check on this one, fr fr. πŸ”

🌈 SEE ALSO 🌈

like, the whole context-tracking friend group tbh 🫢 the enter/exit squad is fully assembled.


okay and for the cute sign-off 🌸 β€” this whole thing lives over in ./kernel, it's from October 2026, and it's the ct_nmi_enter(9) page itself. slay, documented, periodt. πŸ’…βœ¨

πŸ“¦ where this page comes from