On 30/09/21 00:10, Frederic Weisbecker wrote: > When callbacks are offloaded, the NOCB kthreads handle the callbacks > progression on behalf of rcu_core(). > > However during the (de-)offloading process, the kthread may not be > entirely up to the task. As a result some callbacks grace period > sequence number may remain stale for a while because rcu_core() won't > take care of them either. > But that should be taken care of at the tail end of the (de)offloading process, either by rcu_core() or by the NOCB kthreads, no? Or is it e.g. in the case of offloading, we want to make sure an rcu_core() invocation runs callback acceleration because even if the NOCB GP/CB kthreads are being set up, we're not guaranteed is going to do that straight away? IIUC it would be a similar case for deoffload when we stash the NOCB GP/CB kthreads and get rcu_core() running concurrently. > Fix this with forcing callbacks acceleration from rcu_core() as long > as the offloading process isn't complete. >