On 07/02/25 19:37, Frederic Weisbecker wrote: > Le Fri, Feb 07, 2025 at 06:06:45PM +0100, Valentin Schneider a écrit : >> >> Soooo I've been thinking... >> >> Isn't >> >> (context_tracking.state & CT_RCU_WATCHING) >> >> pretty much a proxy for knowing whether a CPU is executing in kernelspace, >> including NMIs? > > You got it! > Yay! >> >> NMI interrupts userspace/VM/idle -> ct_nmi_enter() -> it becomes true >> IRQ interrupts idle -> ct_irq_enter() -> it becomes true >> IRQ interrupts userspace -> __ct_user_exit() -> it becomes true >> IRQ interrupts VM -> __ct_user_exit() -> it becomes true >> >> IOW, if I gate setting deferred work by checking for this instead of >> explicitely CT_STATE_KERNEL, "it should work" and prevent the >> aforementioned issue? Or should I be out drinking instead? :-) > > Exactly it should work! Now that doesn't mean you can't go out > for a drink :-) > Well, drinks were had very shortly after sending this email :D > Thanks.