[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <Z8q9fY0DDzVsc4Yb@jlelli-thinkpadt14gen4.remote.csb>
Date: Fri, 7 Mar 2025 09:33:49 +0000
From: Juri Lelli <juri.lelli@...hat.com>
To: Shrikanth Hegde <sshegde@...ux.ibm.com>
Cc: Ingo Molnar <mingo@...hat.com>, Peter Zijlstra <peterz@...radead.org>,
Vincent Guittot <vincent.guittot@...aro.org>,
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>,
Waiman Long <longman@...hat.com>, Tejun Heo <tj@...nel.org>,
Johannes Weiner <hannes@...xchg.org>,
Michal Koutný <mkoutny@...e.com>,
Qais Yousef <qyousef@...alina.io>,
Sebastian Andrzej Siewior <bigeasy@...utronix.de>,
Swapnil Sapkal <swapnil.sapkal@....com>, cgroups@...r.kernel.org,
Phil Auld <pauld@...hat.com>, luca.abeni@...tannapisa.it,
linux-kernel@...r.kernel.org, tommaso.cucinotta@...tannapisa.it,
Jon Hunter <jonathanh@...dia.com>
Subject: Re: [PATCH v2 4/8] sched/deadline: Rebuild root domain accounting
after every update
On 07/03/25 12:03, Shrikanth Hegde wrote:
> Hi Juri.
>
> On 3/6/25 19:40, Juri Lelli wrote:
> > Rebuilding of root domains accounting information (total_bw) is
> > currently broken on some cases, e.g. suspend/resume on aarch64. Problem
> > is that the way we keep track of domain changes and try to add bandwidth
> > back is convoluted and fragile.
> >
> > Fix it by simplify things by making sure bandwidth accounting is cleared
> > and completely restored after root domains changes (after root domains
> > are again stable).
> >
> > Reported-by: Jon Hunter <jonathanh@...dia.com>
> > Fixes: 53916d5fd3c0 ("sched/deadline: Check bandwidth overflow earlier for hotplug")
> > Signed-off-by: Juri Lelli <juri.lelli@...hat.com>
> > ---
> > include/linux/sched/deadline.h | 4 ++++
> > include/linux/sched/topology.h | 2 ++
> > kernel/cgroup/cpuset.c | 16 +++++++++-------
> > kernel/sched/deadline.c | 16 ++++++++++------
> > kernel/sched/topology.c | 1 +
> > 5 files changed, 26 insertions(+), 13 deletions(-)
> >
> > diff --git a/include/linux/sched/deadline.h b/include/linux/sched/deadline.h
> > index 6ec578600b24..a780068aa1a5 100644
> > --- a/include/linux/sched/deadline.h
> > +++ b/include/linux/sched/deadline.h
> > @@ -34,6 +34,10 @@ static inline bool dl_time_before(u64 a, u64 b)
> > struct root_domain;
> > extern void dl_add_task_root_domain(struct task_struct *p);
> > extern void dl_clear_root_domain(struct root_domain *rd);
> > +extern void dl_clear_root_domain_cpu(int cpu);
> > +
> > +extern u64 dl_cookie;
> > +extern bool dl_bw_visited(int cpu, u64 gen);
>
> Is this needed? There is same declaration outside of CONFIG_SMP done in
> patch 3/8.
Nope. Good catch.
Thanks,
Juri
Powered by blists - more mailing lists