The patch titled fix reiserfs lock inversion of bkl vs inode semaphore has been added to the -mm tree. Its filename is fix-reiserfs-lock-inversion-of-bkl-vs-inode-semaphore.patch See http://www.zip.com.au/~akpm/linux/patches/stuff/added-to-mm.txt to find out what to do about this ------------------------------------------------------ Subject: fix reiserfs lock inversion of bkl vs inode semaphore From: Chris Mason <mason@xxxxxxxx> The correct lock ordering is inode lock -> BKL Signed-off-by: Chris Mason <mason@xxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxx> --- diff -puN fs/reiserfs/file.c~fix-reiserfs-lock-inversion-of-bkl-vs-inode-semaphore fs/reiserfs/file.c --- a/fs/reiserfs/file.c~fix-reiserfs-lock-inversion-of-bkl-vs-inode-semaphore +++ a/fs/reiserfs/file.c @@ -48,8 +48,8 @@ static int reiserfs_file_release(struct return 0; } - reiserfs_write_lock(inode->i_sb); mutex_lock(&inode->i_mutex); + reiserfs_write_lock(inode->i_sb); /* freeing preallocation only involves relogging blocks that * are already in the current transaction. preallocation gets * freed at the end of each transaction, so it is impossible for diff -puN fs/reiserfs/ioctl.c~fix-reiserfs-lock-inversion-of-bkl-vs-inode-semaphore fs/reiserfs/ioctl.c --- a/fs/reiserfs/ioctl.c~fix-reiserfs-lock-inversion-of-bkl-vs-inode-semaphore +++ a/fs/reiserfs/ioctl.c @@ -116,12 +116,12 @@ static int reiserfs_unpack(struct inode if (REISERFS_I(inode)->i_flags & i_nopack_mask) { return 0; } - reiserfs_write_lock(inode->i_sb); /* we need to make sure nobody is changing the file size beneath ** us */ mutex_lock(&inode->i_mutex); + reiserfs_write_lock(inode->i_sb); write_from = inode->i_size & (blocksize - 1); /* if we are on a block boundary, we are already unpacked. */ _ Patches currently in -mm which might be from mason@xxxxxxxx are fix-reiserfs-lock-inversion-of-bkl-vs-inode-semaphore.patch reiserfs-warn-about-the-useless-nolargeio-option.patch make-reiserfs-default-to-barrier=flush.patch make-ext3-mount-default-to-barrier=1.patch reiserfs_fsync-should-only-use-barriers-when-they-are-enabled.patch - To unsubscribe from this list: send the line "unsubscribe mm-commits" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html