diff options
author | Yingping Lu <yingping@sgi.com> | 2006-01-10 23:29:39 -0500 |
---|---|---|
committer | Nathan Scott <nathans@sgi.com> | 2006-01-10 23:29:39 -0500 |
commit | 1661dc8e7a2c6aeb8f2fb6a8197909c95c220a71 (patch) | |
tree | 925c8d4f009a5d080fc5885619c619d9c1e4da71 /fs/xfs | |
parent | c7d437da3dda0ac7199c320b6a48c04ec37a614d (diff) |
[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>
Diffstat (limited to 'fs/xfs')
-rw-r--r-- | fs/xfs/xfs_vnodeops.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/fs/xfs/xfs_vnodeops.c b/fs/xfs/xfs_vnodeops.c index a2b422c984f2..f6aed9ef6a61 100644 --- a/fs/xfs/xfs_vnodeops.c +++ b/fs/xfs/xfs_vnodeops.c | |||
@@ -1612,7 +1612,8 @@ xfs_inactive( | |||
1612 | * only one with a reference to the inode. | 1612 | * only one with a reference to the inode. |
1613 | */ | 1613 | */ |
1614 | truncate = ((ip->i_d.di_nlink == 0) && | 1614 | truncate = ((ip->i_d.di_nlink == 0) && |
1615 | ((ip->i_d.di_size != 0) || (ip->i_d.di_nextents > 0)) && | 1615 | ((ip->i_d.di_size != 0) || (ip->i_d.di_nextents > 0) || |
1616 | (ip->i_delayed_blks > 0)) && | ||
1616 | ((ip->i_d.di_mode & S_IFMT) == S_IFREG)); | 1617 | ((ip->i_d.di_mode & S_IFMT) == S_IFREG)); |
1617 | 1618 | ||
1618 | mp = ip->i_mount; | 1619 | mp = ip->i_mount; |