Re: [PATCH v1 05/11] rcu: Add RCU_GET_STATE_NOT_TRACKED for subsystems without expedited GPs
Frederic Weisbecker <[email protected]> Thu, 9 Jul 2026 15:48:56 +0200
| Newsgroups | org.kernel.vger.rcu,org.kernel.vger.linux-kernel,org.kernel.vger.linux-trace-kernel |
|---|---|
| Message-ID | <[email protected]> |
Le Wed, Jun 24, 2026 at 06:23:47AM -0700, Puranjay Mohan a écrit : > SRCU and Tasks RCU do not track expedited grace periods. When their > callback state is checked via poll_state_synchronize_rcu_full(), the > uninitialized or zeroed exp field could cause false-positive > completion detection. > > This commit adds an RCU_GET_STATE_NOT_TRACKED sentinel value (0x2) that > these subsystems can place into exp to indicate that expedited GP > tracking is not applicable. The expedited sequence check in > poll_state_synchronize_rcu_full() is guarded to skip entries marked with > this sentinel. > > This is needed to allow rcu_segcblist_advance() and rcu_accelerate_cbs() > to work with both normal and expedited grace periods via > get_state_synchronize_rcu_full() and poll_state_synchronize_rcu_full(). > > Reviewed-by: Paul E. McKenney <[email protected]> > Signed-off-by: Puranjay Mohan <[email protected]> Reviewed-by: Frederic Weisbecker <[email protected]> -- Frederic Weisbecker SUSE Labs