Messages in this thread | | | Date | Fri, 17 Feb 2012 00:34:15 +0000 | From | Al Viro <> | Subject | Re: hugetlbfs lockdep spew revisited. |
| |
On Thu, Feb 16, 2012 at 07:16:34PM -0500, Josh Boyer wrote: > On Thu, Feb 16, 2012 at 07:08:57PM -0500, Dave Jones wrote: > > Remember this ? https://lkml.org/lkml/2011/4/15/272 > > Josh took a stab at fixing it in e096d0c7e2e4e5893792db865dd065ac73cf1f00, > > but it seems to still be there. > > I think Tyler Hicks actually noticed this a while ago, but his patch has > been waiting on comment from Al and Christoph: > > http://thread.gmane.org/gmane.linux.file-systems/58795/focus=59565 > > I've been hesitant to comment because I obviously screwed up once > already. We could try this patch in Fedora for a while if Al and > company don't speak up soon.
That has nothing to do with the deadlock in question; it's *NOT* about directories at all and no, it's not a false positive.
This is very simple: ->mmap() should never take ->i_mutex. Directories have nothing to do with that. Simple grep for i_mutex in fs/hugetlbfs/*.c will instantly show its use for non-directories, with pagefaults taken while holding it. Pagefault handlers take ->mmap_sem; so does ->mmap() caller. QED.
| |