public inbox for linux-xfs@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] Remove unnecessary assertion
@ 2008-12-04  6:27 Lachlan McIlroy
  2008-12-04  7:08 ` Christoph Hellwig
  0 siblings, 1 reply; 2+ messages in thread
From: Lachlan McIlroy @ 2008-12-04  6:27 UTC (permalink / raw)
  To: xfs-oss

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.

--- xfs-fix.orig/fs/xfs/linux-2.6/xfs_sync.c
+++ xfs-fix/fs/xfs/linux-2.6/xfs_sync.c
@@ -707,8 +707,6 @@ restart:
  			break;
  		}

-		ASSERT(xfs_iflags_test(ip, (XFS_IRECLAIMABLE|XFS_IRECLAIM)));
-
  		/* ignore if already under reclaim */
  		if (xfs_iflags_test(ip, XFS_IRECLAIM)) {
  			read_unlock(&pag->pag_ici_lock);

_______________________________________________
xfs mailing list
xfs@oss.sgi.com
http://oss.sgi.com/mailman/listinfo/xfs

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2008-12-04  7:09 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-12-04  6:27 [PATCH] Remove unnecessary assertion Lachlan McIlroy
2008-12-04  7:08 ` Christoph Hellwig

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox