Re: [PATCH v3] sched/fair: Skip sched_balance_running cmpxchg when balance is not due
From: Tim Chen
Date: Fri Nov 07 2025 - 12:43:42 EST
On Fri, 2025-11-07 at 14:27 +0530, Shrikanth Hegde wrote:
>
> On 11/7/25 8:27 AM, K Prateek Nayak wrote:
> > Hello Tim,
> >
> > On 11/7/2025 4:57 AM, Tim Chen wrote:
> > > @@ -11757,6 +11772,7 @@ static int sched_balance_rq(int this_cpu, struct rq *this_rq,
> > > .fbq_type = all,
> > > .tasks = LIST_HEAD_INIT(env.tasks),
> > > };
> > > + int need_unlock = false;
> > >
> > > cpumask_and(cpus, sched_domain_span(sd), cpu_active_mask);
> > >
> > > @@ -11768,6 +11784,13 @@ static int sched_balance_rq(int this_cpu, struct rq *this_rq,
> > > goto out_balanced;
> > > }
> > >
> > > + if (idle != CPU_NEWLY_IDLE && (sd->flags & SD_SERIALIZE)) {
>
> Can you also try removing "idle != CPU_NEWLY_IDLE" and see the workload behavior?
> If workloads don't observe regression, it might be worth serializing it too.
Let me ask my colleague running OLTP to give it a try.
Tim