summaryrefslogtreecommitdiffstats
path: root/fs
diff options
context:
space:
mode:
authorDave Chinner <dchinner@redhat.com>2016-05-18 13:54:23 +1000
committerBen Hutchings <ben@decadent.org.uk>2016-08-22 22:38:02 +0100
commit64ecbb0f2886f91fb82680a564a75166c3cf3a22 (patch)
tree3bb7940c6be5c48bfcb1c2eaf95d11dd3aa965b3 /fs
parente8f01c0f0061a2dc9f30667ab767691fb8c4bfd3 (diff)
downloadlinux-stable-64ecbb0f2886f91fb82680a564a75166c3cf3a22.tar.gz
linux-stable-64ecbb0f2886f91fb82680a564a75166c3cf3a22.tar.bz2
linux-stable-64ecbb0f2886f91fb82680a564a75166c3cf3a22.zip
xfs: skip stale inodes in xfs_iflush_cluster
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>
Diffstat (limited to 'fs')
-rw-r--r--fs/xfs/xfs_inode.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/fs/xfs/xfs_inode.c b/fs/xfs/xfs_inode.c
index 7ab5085dfd01..174379ddf22f 100644
--- a/fs/xfs/xfs_inode.c
+++ b/fs/xfs/xfs_inode.c
@@ -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;