Re: [patch 2/3] nohz: change signal tick dependency to wakeup CPUs of member tasks

From: Frederic Weisbecker
Date: Fri Feb 12 2021 - 09:20:00 EST


On Fri, Feb 12, 2021 at 11:00:41AM -0300, Marcelo Tosatti wrote:
> On Fri, Feb 12, 2021 at 01:25:21PM +0100, Frederic Weisbecker wrote:
> > On Thu, Jan 28, 2021 at 05:21:36PM -0300, Marcelo Tosatti wrote:
> > > Rather than waking up all nohz_full CPUs on the system, only wakeup
> > > the target CPUs of member threads of the signal.
> > >
> > > Reduces interruptions to nohz_full CPUs.
> > >
> > > Signed-off-by: Marcelo Tosatti <mtosatti@xxxxxxxxxx>
> > >
> > > Index: linux-2.6/kernel/time/tick-sched.c
> > > ===================================================================
> > > --- linux-2.6.orig/kernel/time/tick-sched.c
> > > +++ linux-2.6/kernel/time/tick-sched.c
> > > @@ -444,9 +444,20 @@ EXPORT_SYMBOL_GPL(tick_nohz_dep_clear_ta
> > > * Set a per-taskgroup tick dependency. Posix CPU timers need this in order to elapse
> > > * per process timers.
> > > */
> > > -void tick_nohz_dep_set_signal(struct signal_struct *sig, enum tick_dep_bits
> > > bit)
> >
> > Why not keeping the signal struct as a parameter?
> >
> > Thanks.
>
> All callers use "struct signal_struct *sig = tsk->signal" as
> signal parameter anyway...

Sure, but that makes more sense with the function role and name.

>
> Can change parameters to (task, signal, bit) if you prefer.

That's ok I can do it, just wanted to make sure I wasn't missing
a reason behind it.

Thanks!