On Fri, Mar 12, 2021 at 01:26:47PM +0100, Frederic Weisbecker wrote: > On Wed, Mar 03, 2021 at 04:26:30PM -0800, paulmck@xxxxxxxxxx wrote: > > /** > > + * start_poll_state_synchronize_rcu - Snapshot and start RCU grace period > > + * > > + * Returns a cookie that is used by a later call to cond_synchronize_rcu() > > + * or poll_state_synchronize_rcu() to determine whether or not a full > > + * grace period has elapsed in the meantime. If the needed grace period > > + * is not already slated to start, notifies RCU core of the need for that > > + * grace period. > > + * > > + * Interrupts must be enabled for the case where it is necessary to awaken > > + * the grace-period kthread. > > + */ > > +unsigned long start_poll_synchronize_rcu(void) > > +{ > > + unsigned long flags; > > + unsigned long gp_seq = get_state_synchronize_rcu(); > > Ah! It's using rcu_seq_snap() and not rcu_seq_current() and therefore it's > waiting for a safe future grace period, right? Exactly! ;-) Thanx, Paul > If so, please discard my previous email. > > Thanks.