irqentry_exi...fter_preempt(9)
β¨ irqentry_exi...fter_preempt π (Kernel API Manual, section 9)
okay so bestie, buckle up, because this one is a long name and a short function but she is lowkey iconic π
πΈ NAME πΈ
irqentry_exit_to_kernel_mode_after_preempt β establishes trace, lockdep and RCU state. that's it, that's the whole vibe β¨
π¦ SYNOPSIS π¦
void irqentry_exit_to_kernel_mode_after_preempt (struct pt_regs *regs ,
irqentry_state_t state );
like yes she returns void, she's not here to give you answers, she's here to fix up state π
π ARGUMENTS π
regsβ pointer to current'spt_regs. the receipts, basically π§Ύstateβ the return value from the matching call toirqentry_enter_from_kernel_mode. so like, you keep that lil souvenir and hand it back here, no cap π«Ά
π₯ DESCRIPTION π₯
okay so the timing here is everything π
this one is to be invoked after irqentry_exit_to_kernel_mode_preempt and before you actually return to the interrupted context. the way that ordering matters. do not freestyle it. π¨
there are no requirements for the CPU state, other than being able to complete the tracing, lockdep and RCU state transitions. that's the whole bar. that's the vibe check. β¨
and then: after this function returns, the caller must return directly to the interrupted context. like, no detours, no side quests, no "ooh let me just do one more thing". go straight home πββοΈπ¨
π SEE ALSO π
kernel file ./include/linux/irq-entry-common.h β go read her, she's the main character of this whole story π
arch_enter_from_user_mode(9)arch_in_rcu_eqs(9)enter_from_user_mode(9)arch_exit_to_user_mode_work(9)arch_exit_to_user_mode_prepare(9)arch_exit_to_user_mode(9)arch_do_signal_or_restart(9)__exit_to_user_mode_prepare(9)syscall_exit_to_user_mode_prepare(9)irqentry_exit_to_user_mode_prepare(9)exit_to_user_mode(9)irqentry_enter_from_user_mode(9)irqentry_exit_to_user_mode(9)struct irqentry_state(9)irqentry_enter_from_kernel_mode(9)irqentry_exit_to_kernel_mode_preempt(9)irqentry_exit_to_kernel_mode(9)irqentry_enter(9)irqentry_exit(9)irqentry_nmi_enter(9)irqentry_nmi_exit(9)
like, that's the whole friend group right there π« literally the group chat π§
so yeah, that's the teardown. she's from ./include/linux, she's dated October 2026, and she's filed under the Kernel API Manual, section 9. slay, ate, periodt. see you at the next interrupt πβ¨π
π¦ 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