irqentry_exi..._kernel_mode(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… irqentry_exit_to_kernel_mode(9) β€” like, the Kernel API Manual's main character ✨

okay so bestie, buckle up πŸŽ€ this one's from the Kernel API Manual and it's giving "quietly doing the most important cleanup work in the whole kernel" energy. no cap.

🌸 NAME 🌸

irqentry_exit_to_kernel_mode β€” Run preempt checks and establish state after invoking the interrupt handler πŸ’–

✨ SYNOPSIS ✨

void irqentry_exit_to_kernel_mode (struct pt_regs *regs ,
irqentry_state_t state );

πŸ¦‹ ARGUMENTS πŸ¦‹

  • regs β€” Pointer to current's pt_regs. literally just the regs for whoever's running rn 🫢
  • state β€” the return value from the matching call to irqentry_enter_from_kernel_mode. matching!! as in they're a set, they're a duo, they're endgame πŸ‘‘

πŸ”₯ DESCRIPTION πŸ”₯

So this is the counterpart of irqentry_enter_from_kernel_mode, and the way it works is it combines the calls to irqentry_exit_to_kernel_mode_preempt and irqentry_exit_to_kernel_mode_after_preempt for you. one function, two jobs, ate and left no crumbs πŸ’…

The requirement for the CPU state? it can schedule. that's the vibe check, that's the entry fee, no exceptions πŸ™ˆ

After the function returns, the tracing, lockdep and RCU state transitions are completed β€” like fully done, wrapped up, finished β€” and the caller must return directly to the interrupted context. directly!! don't wander off, don't stop for a snack, go straight there πŸƒβ€β™€οΈπŸ’¨

⭐ SEE ALSO ⭐


and that's the whole page bestie, hope it slayed for you πŸŒˆπŸ’œ

sign-off time πŸŽ€: this one lives over in ./include/linux and the version stamp on it says October 2026 β€” so yeah, she's from the future, iconic behavior honestly πŸ‘‘βœ¨

πŸ“¦ where this page comes from