Explorar o código

[XFS] Fixed an assertion failure in xfs_reclaim caused by delayed block.
The assertion failure came from XFS QA41. The fix is done by enabling
truncate for delayed block in xfs_inactive.

SGI-PV: 945412
SGI-Modid: xfs-linux-melb:xfs-kern:202521a

Signed-off-by: Yingping Lu <yingping@sgi.com>
Signed-off-by: Nathan Scott <nathans@sgi.com>

Yingping Lu %!s(int64=19) %!d(string=hai) anos
pai
achega
1661dc8e7a
Modificáronse 1 ficheiros con 2 adicións e 1 borrados
  1. 2 1
      fs/xfs/xfs_vnodeops.c

+ 2 - 1
fs/xfs/xfs_vnodeops.c

@@ -1612,7 +1612,8 @@ xfs_inactive(
 	 * only one with a reference to the inode.
 	 * only one with a reference to the inode.
 	 */
 	 */
 	truncate = ((ip->i_d.di_nlink == 0) &&
 	truncate = ((ip->i_d.di_nlink == 0) &&
-	    ((ip->i_d.di_size != 0) || (ip->i_d.di_nextents > 0)) &&
+            ((ip->i_d.di_size != 0) || (ip->i_d.di_nextents > 0) ||
+             (ip->i_delayed_blks > 0)) &&
 	    ((ip->i_d.di_mode & S_IFMT) == S_IFREG));
 	    ((ip->i_d.di_mode & S_IFMT) == S_IFREG));
 
 
 	mp = ip->i_mount;
 	mp = ip->i_mount;