lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening linux-cve-announce PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Wed, 6 Sep 2017 19:53:59 +0530 From: Prateek Sood <prsood@...eaurora.org> To: Waiman Long <longman@...hat.com>, tj@...nel.org, lizefan@...wei.com, cgroups@...r.kernel.org, mingo@...nel.org Cc: linux-kernel@...r.kernel.org, sramana@...eaurora.org Subject: Re: [PATCH] cgroup/cpuset: remove circular dependency deadlock On 09/06/2017 06:26 PM, Waiman Long wrote: > On 09/06/2017 07:48 AM, Prateek Sood wrote: >> Remove circular dependency deadlock in a scenario where hotplug of CPU is >> being done while there is updation in cgroup and cpuset triggered from >> userspace. >> >> Example scenario: >> kworker/0:0 => kthreadd => init:729 => init:1 => kworker/0:0 >> >> kworker/0:0 - lock(cpuhotplug.mutex) [held] >> flush(work) [no high prio workqueue available on CPU] >> wait_for_completion() >> >> kthreadd - percpu_down_read(cgroup_threadgroup_rwsem) [waiting] >> >> init:729 - percpu_down_write(cgroup_threadgroup_rwsem) [held] >> lock(cpuset_mutex) [waiting] >> >> init:1 - lock(cpuset_mutex) [held] >> lock(cpuhotplug.mutex) [waiting] >> >> Eliminate this dependecy by reordering locking of cpuset_mutex >> and cpuhotplug.mutex in following order >> 1. Acquire cpuhotplug.mutex >> 2. Acquire cpuset_mutex >> >> Signed-off-by: Prateek Sood <prsood@...eaurora.org> > > Is this patch for the latest upstream kernel or 4.4? There is no > cpuhotplug.mutex anymore in upstream kernel. It is a per-cpu rwsem > cpu_hotplug_lock. > > Cheers, > Longman > Thanks for inputs, I will check latest kernel for details Regards Prateek -- Qualcomm India Private Limited, on behalf of Qualcomm Innovation Center, Inc., is a member of Code Aurora Forum, a Linux Foundation Collaborative Project
Powered by blists - more mailing lists