From: Brian Foster Date: Mon, 11 Jun 2012 14:39:43 +0000 (-0400) Subject: xfs: check for stale inode before acquiring iflock on push X-Git-Tag: v3.6-rc1~42^2~37 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=76e8f1386673b864cfca3c24c4d5814740e76465;p=pandora-kernel.git xfs: check for stale inode before acquiring iflock on push An inode in the AIL can be flush locked and marked stale if a cluster free transaction occurs at the right time. The inode item is then marked as flushing, which causes xfsaild to spin and leaves the filesystem stalled. This is reproduced by running xfstests 273 in a loop for an extended period of time. Check for stale inodes before the flush lock. This marks the inode as pinned, leads to a log flush and allows the filesystem to proceed. Signed-off-by: Brian Foster Reviewed-by: Dave Chinner Reviewed-by: Christoph Hellwig Reviewed-by: Mark Tinguely Signed-off-by: Ben Myers --- Reading git-diff-tree failed