diff options
Diffstat (limited to 'fs/xfs/xfs_symlink.c')
-rw-r--r-- | fs/xfs/xfs_symlink.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/fs/xfs/xfs_symlink.c b/fs/xfs/xfs_symlink.c index 14e58f2c96bd..5fda18919d3b 100644 --- a/fs/xfs/xfs_symlink.c +++ b/fs/xfs/xfs_symlink.c | |||
@@ -80,6 +80,10 @@ xfs_readlink_bmap( | |||
80 | if (error) { | 80 | if (error) { |
81 | xfs_buf_ioerror_alert(bp, __func__); | 81 | xfs_buf_ioerror_alert(bp, __func__); |
82 | xfs_buf_relse(bp); | 82 | xfs_buf_relse(bp); |
83 | |||
84 | /* bad CRC means corrupted metadata */ | ||
85 | if (error == EFSBADCRC) | ||
86 | error = EFSCORRUPTED; | ||
83 | goto out; | 87 | goto out; |
84 | } | 88 | } |
85 | byte_cnt = XFS_SYMLINK_BUF_SPACE(mp, byte_cnt); | 89 | byte_cnt = XFS_SYMLINK_BUF_SPACE(mp, byte_cnt); |