Messages in this thread | | | Date | Tue, 4 Oct 2011 14:10:16 -0700 | From | Andrew Morton <> | Subject | Re: [BUGFIX] cgroup: create a workqueue for cgroup |
| |
On Mon, 3 Oct 2011 14:19:11 +0900 Daisuke Nishimura <nishimura@mxp.nes.nec.co.jp> wrote:
> On Mon, 3 Oct 2011 09:22:44 +0900 > Daisuke Nishimura <nishimura@mxp.nes.nec.co.jp> wrote: > > > On Fri, 30 Sep 2011 15:30:49 -0700 > > Andrew Morton <akpm00@gmail.com> wrote: > > > > > On Fri, 30 Sep 2011 16:54:52 +0900 > > > Daisuke Nishimura <nishimura@mxp.nes.nec.co.jp> wrote: > > > > > > > In commit:f90d4118, cpuset_wq, a separate workqueue for cpuset, was introduced > > > > to avoid a dead lock against cgroup_mutex between async_rebuild_sched_domains() > > > > and cgroup_tasks_write(). > > > > > > > > But check_for_release() has a similar problem: > > > > > > > > check_for_release() > > > > schedule_work(release_agent_work) > > > > cgroup_release_agent() > > > > mutex_lock(&cgroup_mutex) > > > > > > > > And I actually see a lockup which seems to be caused by this problem > > > > on 2.6.32-131.0.15.el6.x86_64. > > > > > > Are you sure the bug is still present in current kernels? Perhaps > > > Tejun's workqueue changes magically made it go away. > > > > > Not yet, but I'll check it. > > > As you said, I cannot repricate this issue on 3.1-rc8. But I've verified > it happens on 2.6.32.46 and this patch fixes it, so I think this patch is > necessary for stable at least. >
Getting the fix into -stable is a problem.
Firstly, the -stable maintainers only really take backports of fixes which are already in mainline. So to fix this bug one would need to identify which upstream fix(es) did the work, and backport those.
Secondly, I'm not sure that kernels as old as 2.6.32.x are still being maintained at kernel.org, at least.
So I'm not sure what to suggest. Perhaps send the fix directly to distro kernel maintainers?
| |