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@xxxxxxxxxx> > > Fixes: 53916d5fd3c0 ("sched/deadline: Check bandwidth overflow earlier for hotplug") > > Signed-off-by: Juri Lelli <juri.lelli@xxxxxxxxxx> > > --- > > 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