Re: [PATCH 5/9] sched/balancing: Fix comments (trying to) refer to NOHZ_BALANCE_KICK

From: Ingo Molnar
Date: Fri Mar 08 2024 - 05:12:04 EST



* Vincent Guittot <vincent.guittot@xxxxxxxxxx> wrote:

> On Mon, 4 Mar 2024 at 10:48, Ingo Molnar <mingo@xxxxxxxxxx> wrote:
> >
> > Fix two typos:
> >
> > - There's no such thing as 'nohz_balancing_kick', the
> > flag is named 'BALANCE' and is capitalized: NOHZ_BALANCE_KICK.
> >
> > - Likewise there's no such thing as a 'pending nohz_balance_kick'
> > either, the NOHZ_BALANCE_KICK flag is all upper-case.
> >
> > Signed-off-by: Ingo Molnar <mingo@xxxxxxxxxx>
> > Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
> > Cc: Vincent Guittot <vincent.guittot@xxxxxxxxxx>
> > Cc: Dietmar Eggemann <dietmar.eggemann@xxxxxxx>
> > Cc: Linus Torvalds <torvalds@xxxxxxxxxxxxxxxxxxxx>
> > Cc: Valentin Schneider <vschneid@xxxxxxxxxx>
> > ---
> > kernel/sched/fair.c | 4 ++--
> > 1 file changed, 2 insertions(+), 2 deletions(-)
> >
> > diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c
> > index 934ace69eb30..4c46bffb6a7a 100644
> > --- a/kernel/sched/fair.c
> > +++ b/kernel/sched/fair.c
> > @@ -12410,14 +12410,14 @@ static int newidle_balance(struct rq *this_rq, struct rq_flags *rf)
> >
> > /*
> > * run_rebalance_domains is triggered when needed from the scheduler tick.
> > - * Also triggered for nohz idle balancing (with nohz_balancing_kick set).
>
> I think it should be nohz_balancer_kick() instead of nohz_balancing_kick
>
>
> > + * Also triggered for NOHZ idle balancing (with NOHZ_BALANCE_KICK set).
>
> In fact, this can be triggered even without NOHZ_BALANCE_KICK. Any of
> the below can trigger this
> - NOHZ_BALANCE_KICK
> - NOHZ_STATS_KICK
> - NOHZ_NEXT_KICK

Yeah, indeed any of the flags in NOHZ_KICK_MASK can trigger nohz_csd and
indirect the balancing softirq - so I changed the text to:

/*
* This softirq may be triggered from the scheduler tick, or by
* any of the flags in NOHZ_KICK_MASK: NOHZ_BALANCE_KICK,
* NOHZ_STATS_KICK or NOHZ_NEXT_KICK.
*/
static __latent_entropy void run_rebalance_domains(struct softirq_action *h)

Thanks,

Ingo