Explorar o código

[XFS] Stop a BUG from occurring in generic_delete_inode by preventing
transaction completion from marking the inode dirty while it is being
cleaned up on it's way out of the system.

SGI-PV: 952967
SGI-Modid: xfs-linux-melb:xfs-kern:26040a

Signed-off-by: David Chinner <dgc@sgi.com>
Signed-off-by: Nathan Scott <nathans@sgi.com>

David Chinner %!s(int64=19) %!d(string=hai) anos
pai
achega
714250879e
Modificáronse 1 ficheiros con 2 adicións e 1 borrados
  1. 2 1
      fs/xfs/xfs_inode.c

+ 2 - 1
fs/xfs/xfs_inode.c

@@ -2757,7 +2757,8 @@ xfs_iunpin(
 			if (vp) {
 				struct inode	*inode = vn_to_inode(vp);
 
-				if (!(inode->i_state & I_NEW))
+				if (!(inode->i_state &
+						(I_NEW|I_FREEING|I_CLEAR)))
 					mark_inode_dirty_sync(inode);
 			}
 		}