]> err.no Git - linux-2.6/commitdiff
[XFS] Fixed an assertion failure in xfs_reclaim caused by delayed block.
authorYingping Lu <yingping@sgi.com>
Wed, 11 Jan 2006 04:29:39 +0000 (15:29 +1100)
committerNathan Scott <nathans@sgi.com>
Wed, 11 Jan 2006 04:29:39 +0000 (15:29 +1100)
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>
fs/xfs/xfs_vnodeops.c

index a2b422c984f2af2266c10adba6f819f2f899b077..f6aed9ef6a613c2f8165a3a6688c7fded07915b3 100644 (file)
@@ -1612,7 +1612,8 @@ xfs_inactive(
         * only one with a reference to the inode.
         */
        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));
 
        mp = ip->i_mount;