Messages in this thread | | | Date | Fri, 13 Jul 2007 02:05:29 -0700 | From | Andrew Morton <> | Subject | Re: [EXT4 set 5][PATCH 1/1] expand inode i_extra_isize to support features in larger inode |
| |
On Tue, 10 Jul 2007 16:32:47 -0700 Andrew Morton <akpm@linux-foundation.org> 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-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |