On Mon, Aug 10, 2009 at 10:08:26PM +0200, Laurent Riffard wrote: > Le 10/08/2009 01:33, Frederic Weisbecker a écrit : > > > > Thanks a lot for this report. Reiserfs xattrs are definetly paths I > > haven't tested deeply. > > > > I'm trying to reproduce these issues and will let you know once I get > > a fix. > > > > (Btw, if you're still running this tree, you should update with the > > latest patch I just pushed, it's a very important fix). > > > > Thanks, > > > > Frederic. > > I tried with your lastest patch (git head is at "kill-the-bkl/reiserfs: > fix early readdir offset increment"), and the lockout still happens. > > ~~ > laurent Ok, it looks like the last two patches in my tree have introduced a locking inversion dependency between the reiserfs write lock and mm->mmap_sem. In filldir, we take the reiserfs lock and we might take mm->mmap_sem if we fault while copying the dir entry to the user. In mmap, the mm->mmap_sem is taken before the call to the fs mmap callback and there we take the reiserfs lock. Locking inversion: AB - BA What is really sad here is that I have no choice: I can't take the reiserfs lock while filling a dir entry to the user. This part, introduced in the last two patches of the tree optimized a lot the throughput, and now I have to revert them :-( -- To unsubscribe from this list: send the line "unsubscribe reiserfs-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html