From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dietmar Eggemann Subject: Re: [PATCH v3] sched: cpuset: Don't rebuild root domains on suspend-resume Date: Mon, 13 Mar 2023 18:10:49 +0100 Message-ID: <7070da53-a5a7-6965-5604-abee3cae9d46@arm.com> References: <20230228174627.vja5aejq27dsta2u@airbuntu> <20230301122852.zgzreby42lh2zf6w@airbuntu> <20230301170322.xthlso7jfkixlyex@airbuntu> <20230311185150.stvtcbdkoofgn3wd@airbuntu> Mime-Version: 1.0 Content-Transfer-Encoding: 8bit Return-path: Content-Language: en-US In-Reply-To: List-ID: Content-Type: text/plain; charset="utf-8" To: Juri Lelli , Qais Yousef Cc: Hao Luo , Peter Zijlstra , Ingo Molnar , Waiman Long , Steven Rostedt , tj-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, luca.abeni-5rdYK369eBLQB0XuIGIEkQ@public.gmane.org, claudio-YOzL5CV4y4YG1A2ADO40+w@public.gmane.org, tommaso.cucinotta-5rdYK369eBLQB0XuIGIEkQ@public.gmane.org, bristot-H+wXaHxf7aLQT0dZR+AlfA@public.gmane.org, mathieu.poirier-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org, cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Vincent Guittot , Wei Wang , Rick Yiu , Quentin Perret , Heiko Carstens , Vasily Gorbik , Alexander Gordeev , Sudeep Holla , Zefan Li , linux-s390-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, x86-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org On 13/03/2023 17:37, Juri Lelli wrote: > On 11/03/23 18:51, Qais Yousef wrote: >> On 03/09/23 14:23, Hao Luo wrote: >>> On Wed, Mar 8, 2023 at 10:55 PM Juri Lelli wrote: >>>> >>>> On 08/03/23 10:01, Hao Luo wrote: >>>>> On Wed, Mar 8, 2023 at 2:20 AM Juri Lelli wrote: >>>>>> >>>>>> On 01/03/23 17:03, Qais Yousef wrote: >>>>>>> On 03/01/23 15:26, Juri Lelli wrote: [...] >> Yeah I am working on 5.10 too (this will need to be backported to 5.10 and 5.15 >> ultimately) and had the same crash because task is NULL. >> >> Fixed it this way which I think what you intended to do Juri? It moves the >> check for dl_task(task) inside cgroup_taskset_for_each() loop. >> >> diff --git a/kernel/cgroup/cpuset.c b/kernel/cgroup/cpuset.c >> index 83a8943467fb..06d6bb68d86b 100644 >> --- a/kernel/cgroup/cpuset.c >> +++ b/kernel/cgroup/cpuset.c >> @@ -2495,11 +2495,11 @@ static int cpuset_can_attach(struct cgroup_taskset *tset) >> ret = security_task_setscheduler(task); >> if (ret) >> goto out_unlock; >> - } >> >> - if (dl_task(task)) { >> - cs->deadline_tasks++; >> - cpuset_attach_old_cs->deadline_tasks--; >> + if (dl_task(task)) { >> + cs->deadline_tasks++; >> + cpuset_attach_old_cs->deadline_tasks--; >> + } >> } >> >> /* > > Duh, indeed. > >> Like Hao I don't have any deadline tasks in the system. With the fix above >> I don't notice the delay on suspend resume using your patches. > > OK, cool. > >> If you want any debug; please feel free to add them into your branch so I can >> run with that and give you the log. > > Will need to find time to run some tests with DEADLINE tasks, yeah. > Maybe Dietmar, since you reported as well the issue above with your > testing, you could help with testing DEADLINE? Ah, now I see! It's the same issue I saw. And it's not specifically related to DL tasks. Any tasks which you move into a cpuset will trigger this. Yeah, can do some DL tests later on this fix.