[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20251210094246.GQ3707891@noisy.programming.kicks-ass.net>
Date: Wed, 10 Dec 2025 10:42:46 +0100
From: Peter Zijlstra <peterz@...radead.org>
To: Tim Chen <tim.c.chen@...ux.intel.com>
Cc: Ingo Molnar <mingo@...hat.com>,
K Prateek Nayak <kprateek.nayak@....com>,
"Gautham R . Shenoy" <gautham.shenoy@....com>,
Vincent Guittot <vincent.guittot@...aro.org>,
Juri Lelli <juri.lelli@...hat.com>,
Dietmar Eggemann <dietmar.eggemann@....com>,
Steven Rostedt <rostedt@...dmis.org>,
Ben Segall <bsegall@...gle.com>, Mel Gorman <mgorman@...e.de>,
Valentin Schneider <vschneid@...hat.com>,
Madadi Vineeth Reddy <vineethr@...ux.ibm.com>,
Hillf Danton <hdanton@...a.com>,
Shrikanth Hegde <sshegde@...ux.ibm.com>,
Jianyong Wu <jianyong.wu@...look.com>,
Yangyu Chen <cyy@...self.name>,
Tingyin Duan <tingyin.duan@...il.com>,
Vern Hao <vernhao@...cent.com>, Vern Hao <haoxing990@...il.com>,
Len Brown <len.brown@...el.com>, Aubrey Li <aubrey.li@...el.com>,
Zhao Liu <zhao1.liu@...el.com>, Chen Yu <yu.chen.surf@...il.com>,
Chen Yu <yu.c.chen@...el.com>,
Adam Li <adamli@...amperecomputing.com>,
Aaron Lu <ziqianlu@...edance.com>, Tim Chen <tim.c.chen@...el.com>,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH v2 06/23] sched/cache: Track LLC-preferred tasks per
runqueue
On Tue, Dec 09, 2025 at 02:55:21PM -0800, Tim Chen wrote:
> > > +static void account_llc_dequeue(struct rq *rq, struct task_struct *p)
> > > +{
> > > + int pref_llc;
> > > +
> > > + /*
> > > + * Borrow the uc_se->active from uclamp_rq_inc_id(),
> > > + * uclamp_rq_dec_id() to avoid the unbalanced calculation
> > > + * of rq statistics.
> > > + */
> > > + if (unlikely(!p->sched_llc_active))
> > > + return;
> >
> > Another very confusing comment; what? Also, can you please explain (in
> > the new comment) how we get here without having llc_active set?
>
> The comment meant to say that we are using a similar mechanism as
> accounting done in uc_se->active from uclamp_rq_inc_id(). I agree that
> it confuses more than making things clearer.
>
> How about the following comment to make things clearer:
>
> /*
> * Cache aware scheduling was active when the task was enqueued.
> * Admin has disabled cache aware scheduling before task was dequeued
> * but the accounting has to be kept straight in case cache aware scheduling
> * is re-enabled.
> */
Is having that sched_cache_enabled() test worth it?
account_numa_{en,de}queue() don't seem to have any of this.
> > > + pref_llc = p->preferred_llc;
> > > + if (pref_llc < 0)
> > > + return;
> > > +
> > > + rq->nr_llc_running--;
> > > + rq->nr_pref_llc_running -= (pref_llc == task_llc(p));
> > > + p->sched_llc_active = false;
> > > +}
Powered by blists - more mailing lists