Messages in this thread | | | Date | Tue, 17 Jan 2012 20:06:52 -0500 | From | Chris Mason <> | Subject | Re: btrfs/mmap lockdep report from 3.2 |
| |
On Wed, Jan 18, 2012 at 12:25:50AM +0100, Jan Kara wrote: > On Mon 09-01-12 20:44:32, Chris Mason wrote: > > On Mon, Jan 09, 2012 at 08:03:32PM -0500, Dave Jones wrote: > > > Just hit this with Linus' tree as of 37cfc3f67db9f2d907f6bfcfae590cdbbef623e8 > > > > > > Dave > > > > > > [ 130.932837] ====================================================== > > > [ 130.933032] [ INFO: possible circular locking dependency detected ] > > > [ 130.933032] 3.2.0+ #19 Not tainted > > > [ 130.933032] ------------------------------------------------------- > > > [ 130.933032] firefox/1630 is trying to acquire lock: > > > [ 130.933032] (&sb->s_type->i_mutex_key#13){+.+.+.}, at: [<ffffffffa011fd5b>] btrfs_page_mkwrite+0x5b/0x310 [btrfs] > > > [ 130.933032] > > > [ 130.933032] but task is already holding lock: > > > [ 130.933032] (&mm->mmap_sem){++++++}, at: [<ffffffff816a38c8>] do_page_fault+0xe8/0x5d0 > > > [ 130.933032] > > > [ 130.933032] which lock already depends on the new lock. > > > > From a lockdep point of view, this is real. But the page_mkwrite > > code is never called on directories so it is actually safe. We'll fix > > it up. > Well, but hitting a fault (and thus acquiring mmap_sem) while holding > i_mutex can happen also for normal files when we copy data from userspace. > So I believe the deadlock is real...
Al mentioned this as well. Josef patched it up (its in my pull request) and I'll send a fix to -stable.
-chris
| |