Re: [PATCH] rcutorture: Traverse possible cpu to set maxcpu in rcu_nocb_toggle()

From: Paul E. McKenney
Date: Fri Sep 01 2023 - 10:56:19 EST


On Tue, Aug 29, 2023 at 05:38:54AM -0700, Paul E. McKenney wrote:
> On Tue, Aug 29, 2023 at 11:24:24AM +0200, Frederic Weisbecker wrote:
> > On Mon, Aug 28, 2023 at 05:51:09PM -0400, Joel Fernandes wrote:
> > > I think the issue is the loop later in the function does
> > > not try to toggle cpus that came online too late.
> > >
> > > So it does not test offloading on all CPUs just because max got updated too
> > > late.
> >
> > Right, and therefore for_each_possible_cpu() or for_each_present_cpu()
> > should be fine to iterate since it's ok to try to toggle an offline CPU.
>
> OK, so I will accept the original patch which did just that.

Which I finally did. I took the liberty of adding Frederic's Reviewed-by,
but please let me know if this is in any way inappropriate.

Thanx, Paul

> Thank you!
>
> I recently got burned by lack of workqueues on a not-yet-onlined CPU,
> hence my questions here. ;-)
>
> Thanx, Paul
>
> > > One fix could be to periodically check in the loop if a new cpu at maxcpu + 1
> > > ever got onlined. If it did, update the maxcpu.
> >
> > Is it worth the complication though?
> >
> > Thanks.
> >
> > >
> > > Thanks.
> > >
> > >
> > > >
> > > > Thanks.