ct_nmi_enter(9)
π 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 toct_nmi_enter, be sure to test withCONFIG_RCU_EQS_DEBUG=y. no skipping the vibe check on this one, fr fr. π
π SEE ALSO π
- the kernel file
./kernel/context_tracking.c(iconic source material, go read it) π ct_nmi_exit(9)ct_idle_enter(9)ct_idle_exit(9)ct_irq_enter(9)ct_irq_exit(9)__ct_user_enter(9)user_enter_callable(9)__ct_user_exit(9)user_exit_callable(9)
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
- 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