Re: [PATCH] sched/schedutil: Fix deadlock between cpuset and cpu hotplug when using schedutil

From: Xuewen Yan
Date: Mon Aug 08 2022 - 22:03:05 EST


Hi Tejun

On Sat, Jul 30, 2022 at 3:59 AM Tejun Heo <tj@xxxxxxxxxx> wrote:
>
> On Fri, Jul 29, 2022 at 09:39:49AM +0100, Qais Yousef wrote:
> > I *think* it's because we haven't removed cpus_read_lock() from
> > cpuset_attach(). So we end up holding the lock twice in the same path. Since we
> > hold it unconditionally now, we should remove cpuset dependency on
> > cpus_read_lock() I believe.
>
> Ah, yeah, that's because pending write locker makes future reader lockers
> wait, so even if we're holding read lock, if we try to read lock again, we
> end up waiting. I'll make the cpus_read_lock() unconditional in cgroup core
> and drop it from cpuset's attach operation.

I revert the following patch which add the cpus_read_lock() in
cpuset's attach and have test for a while. And the deadlock has not
reproduced.

https://lore.kernel.org/all/20220121101210.84926-1-zhangqiao22@xxxxxxxxxx/

But I do not know the risk with reverting the patch..

Thanks!
BR
--
xuewen

>
> Thanks.
>
> --
> tejun