lkml.org 
[lkml]   [2014]   [Jun]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH 5/5] cgroup: fix a race between cgroup_mount() and cgroup_kill_sb()
Hello, Li.

On Tue, Jun 24, 2014 at 09:22:00AM +0800, Li Zefan wrote:
> > Ah, right. Gees, I'm really hating the fact that we have ->mount but
> > not ->umount. However, can't we make it a bit simpler by just
> > introducing a mutex protecting looking up and refing up an existing
> > root and a sb going away? The only problem is that the refcnt being
> > killed isn't atomic w.r.t. new live ref coming up, right? Why not
> > just add a mutex around them so that they can't race?
>
> Well, kill_sb() is called with sb->s_umount held, while kernfs_mount()
> returned with sb->s_umount held, so adding a mutex will lead to ABBA
> deadlock.

Hmmm? Why does that matter? The only region in cgroup_mount() which
needs to be put inside such mutex would be root lookup, no?

Thanks.

--
tejun


\
 
 \ /
  Last update: 2014-06-24 23:41    [W:0.136 / U:0.380 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site