On Wed, Apr 29, 2009 at 03:41:29PM -0400, Chris Mason wrote: > > I think my latest patch has this nailed down without the mutex. > Basically it checks i_nlink with super lock held and then calls > ext3_orphan_del. If we race with unlink, we'll either find the new > nlink count and skip the orphan del or unlink will come in after us and > add the orphan back. Can you make sure you mark any lock_super()'s with a comment saying what it's protecting? Eventually I suspect we'll want to forward port this to ext4, and I have a patch in the ext4 patch queue that I mean to backport to ext3 which introduces an explicit i_orphan_lock mutex and eliminates most of the calls to lock/unlock_super() in support of a cleanup which Christoph is planning. So it'll make life easier if you annotate any use of lock_super(), since it's going to be going away in both ext3 and ext4 in the near future. Thanks!! - Ted -- 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