]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
xfs: skip stale inodes in xfs_iflush_cluster
authorDave Chinner <dchinner@redhat.com>
Wed, 18 May 2016 03:54:23 +0000 (13:54 +1000)
committerBen Hutchings <ben@decadent.org.uk>
Mon, 22 Aug 2016 21:38:02 +0000 (22:38 +0100)
commit 7d3aa7fe970791f1a674b14572a411accf2f4d4e upstream.

We don't write back stale inodes so we should skip them in
xfs_iflush_cluster, too.

Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Brian Foster <bfoster@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
fs/xfs/xfs_inode.c

index 7ab5085dfd01773d75fffc28903e187379bca4cd..174379ddf22f79588f68cef6e73b419d39464d46 100644 (file)
@@ -3031,6 +3031,7 @@ xfs_iflush_cluster(
                 */
                spin_lock(&iq->i_flags_lock);
                if (!iq->i_ino ||
+                   __xfs_iflags_test(iq, XFS_ISTALE) ||
                    (XFS_INO_TO_AGINO(mp, iq->i_ino) & mask) != first_index) {
                        spin_unlock(&iq->i_flags_lock);
                        continue;