Re: [PATCH RFC v2 03/15] rcu-tasks: Hold trampoline nesting across irq-exit preemption in trampoline text

From: Frederic Weisbecker

Date: Tue Sep 15 2026 - 09:45:15 EST


Le Fri, Sep 11, 2026 at 02:08:41PM +0000, Josef Bacik a écrit :
> A trampoline's own rcu_tramp_nesting increment and decrement live inside
> the trampoline, so there is a window of a few instructions on entry and
> exit where the count is zero while the CPU is executing trampoline text
> (or text on the way into one, such as a static ftrace stub holding a
> direct-call target). In that window the task has not called out, so it
> can only be preempted from an interrupt, and the interrupted instruction
> pointer identifies where it is.

I haven't read the whole patchset yet but what happens if the count is zero
on trampoline exit but the trampoline isn't finished yet and RCU tasks does a
fully quiescent scan of all tasks during that short window? Isn't that ending
with a too short grace period?

Thanks.

--
Frederic Weisbecker
SUSE Labs