diff options
-rw-r--r-- | fs/xfs/xfs_buf.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/fs/xfs/xfs_buf.c b/fs/xfs/xfs_buf.c index 4e8f0df82d02..50eb603e0cc1 100644 --- a/fs/xfs/xfs_buf.c +++ b/fs/xfs/xfs_buf.c | |||
@@ -1022,7 +1022,9 @@ xfs_buf_iodone_work( | |||
1022 | bool read = !!(bp->b_flags & XBF_READ); | 1022 | bool read = !!(bp->b_flags & XBF_READ); |
1023 | 1023 | ||
1024 | bp->b_flags &= ~(XBF_READ | XBF_WRITE | XBF_READ_AHEAD); | 1024 | bp->b_flags &= ~(XBF_READ | XBF_WRITE | XBF_READ_AHEAD); |
1025 | if (read && bp->b_ops) | 1025 | |
1026 | /* only validate buffers that were read without errors */ | ||
1027 | if (read && bp->b_ops && !bp->b_error && (bp->b_flags & XBF_DONE)) | ||
1026 | bp->b_ops->verify_read(bp); | 1028 | bp->b_ops->verify_read(bp); |
1027 | 1029 | ||
1028 | if (bp->b_iodone) | 1030 | if (bp->b_iodone) |