Re: [PATCH RT 5/8] sched: Fix affine_move_task() self-concurrency

From: Paul Gortmaker
Date: Mon Jul 26 2021 - 12:26:33 EST


[Re: [PATCH RT 5/8] sched: Fix affine_move_task() self-concurrency] On 25/07/2021 (Sun 07:03) Pavel Machek wrote:

> Hi!
>
> > 5.10.47-rt46-rc1 stable review patch.
> > If anyone has any objections, please let me know.
> >
> > Add set_affinity_pending::stop_pending, to indicate if a stopper is in
> > progress.
> > diff --git a/kernel/sched/core.c b/kernel/sched/core.c
> > index 9cbe12d8c5bd..20588a59300d 100644
> > --- a/kernel/sched/core.c
> > +++ b/kernel/sched/core.c
> > @@ -1900,6 +1900,7 @@ struct migration_arg {
> >
> > struct set_affinity_pending {
> > refcount_t refs;
> > + unsigned int stop_pending;
> > struct completion done;
> > struct cpu_stop_work stop_work;
> > struct migration_arg arg;
>
> For better readability, this should be bool, AFAICT.

Maybe you missed it in the context you deleted, but this is a mainline
backport to stable-rt, and hence is not the time or place to be
injecting stylistic comments. Just like gregKH's stable tree, backports
are kept as "faithful" to the original as possible unless the older
surrounding code base forces some kind of alteration out of necessity.

Thanks,
Paul.
--

>
> > * and have the stopper function handle it all race-free.
> > */
> > + stop_pending = pending->stop_pending;
> > + if (!stop_pending)
> > + pending->stop_pending = true;
> >
> ...because it is used as bool.
>
> Pavel
>
> --
> (english) http://www.livejournal.com/~pavelmachek
> (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html