On Tue, 10 Jul 2007 16:32:47 -0700 Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> wrote: > > + brelse(bh); > > + up_write(&EXT4_I(inode)->xattr_sem); > > + return error; > > +} > > + > > We're doing GFP_KERNEL memory allocations while holding xattr_sem. This > can cause the VM to reenter the filesystem, perhaps taking i_mutex and/or > i_truncate_sem and/or journal_start() (I forget whether this still > happens). Have we checked whether this can occur and if so, whether we are > OK from a lock ranking POV? Bear in mind that journalled-data mode is more > complex in this regard. I notice that everyone carefully avoided addressing this ;) Oh well, hopefully people are testing with lockdep enabled. As long as the fs is put under extreme memory pressure, most bugs should be reported. Except lockdep doesn't know about journal_start(), which has ranking requirements similar to a semaphore. Nor does it know about lock_page(). We already have hard-to-hit but deadlockable bugs in this area. - To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html