diff options
author | Lachlan McIlroy <lachlan@redback.melbourne.sgi.com> | 2008-12-04 22:15:49 -0500 |
---|---|---|
committer | Lachlan McIlroy <lachlan@redback.melbourne.sgi.com> | 2008-12-04 22:15:49 -0500 |
commit | 797eaed40e1df4a3b9ece6894a71ce2b568bca38 (patch) | |
tree | 930f84ddfa6cf8cb7e4ff81122cafd877489c02f /fs | |
parent | a5b429d41fede3a90deb532f5c2318393ed3a17b (diff) |
[XFS] Remove unnecessary assertion
Hit this assert because an inode was tagged with XFS_ICI_RECLAIM_TAG but
not XFS_IRECLAIMABLE|XFS_IRECLAIM. This is because xfs_iget_cache_hit()
first clears XFS_IRECLAIMABLE and then calls __xfs_inode_clear_reclaim_tag()
while only holding the pag_ici_lock in read mode so we can race with
xfs_reclaim_inodes_ag(). Looks like xfs_reclaim_inodes_ag() will do the
right thing anyway so just remove the assert.
Thanks to Christoph for pointing out where the problem was.
Signed-off-by: Lachlan McIlroy <lachlan@sgi.com>
Reviewed-by: Christoph Hellwig <hch@infradead.org>
Diffstat (limited to 'fs')
-rw-r--r-- | fs/xfs/linux-2.6/xfs_sync.c | 2 |
1 files changed, 0 insertions, 2 deletions
diff --git a/fs/xfs/linux-2.6/xfs_sync.c b/fs/xfs/linux-2.6/xfs_sync.c index ca5bd2951a84..2ed035354c26 100644 --- a/fs/xfs/linux-2.6/xfs_sync.c +++ b/fs/xfs/linux-2.6/xfs_sync.c | |||
@@ -707,8 +707,6 @@ restart: | |||
707 | break; | 707 | break; |
708 | } | 708 | } |
709 | 709 | ||
710 | ASSERT(xfs_iflags_test(ip, (XFS_IRECLAIMABLE|XFS_IRECLAIM))); | ||
711 | |||
712 | /* ignore if already under reclaim */ | 710 | /* ignore if already under reclaim */ |
713 | if (xfs_iflags_test(ip, XFS_IRECLAIM)) { | 711 | if (xfs_iflags_test(ip, XFS_IRECLAIM)) { |
714 | read_unlock(&pag->pag_ici_lock); | 712 | read_unlock(&pag->pag_ici_lock); |