Messages in this thread | | | From | Xuewen Yan <> | Date | Tue, 9 Aug 2022 10:02:44 +0800 | Subject | Re: [PATCH] sched/schedutil: Fix deadlock between cpuset and cpu hotplug when using schedutil |
| |
Hi Tejun
On Sat, Jul 30, 2022 at 3:59 AM Tejun Heo <tj@kernel.org> 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@huawei.com/
But I do not know the risk with reverting the patch..
Thanks! BR -- xuewen
> > Thanks. > > -- > tejun
| |