diff options
| author | 2019-11-02 09:40:53 -0700 | |
|---|---|---|
| committer | 2019-11-04 13:55:54 -0800 | |
| commit | a5155b870d687de1a5f07e774b49b1e8ef0f6f50 (patch) | |
| tree | f0bb26d98278733f68b58f4ca40e57712e0fc14f /fs/xfs/libxfs/xfs_btree.c | |
| parent | xfs: constify the buffer pointer arguments to error functions (diff) | |
| download | wireguard-linux-a5155b870d687de1a5f07e774b49b1e8ef0f6f50.tar.xz wireguard-linux-a5155b870d687de1a5f07e774b49b1e8ef0f6f50.zip | |
xfs: always log corruption errors
Make sure we log something to dmesg whenever we return -EFSCORRUPTED up
the call stack.
Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Carlos Maiolino <cmaiolino@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Diffstat (limited to 'fs/xfs/libxfs/xfs_btree.c')
| -rw-r--r-- | fs/xfs/libxfs/xfs_btree.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/fs/xfs/libxfs/xfs_btree.c b/fs/xfs/libxfs/xfs_btree.c index 4fd89c80c821..98843f1258b8 100644 --- a/fs/xfs/libxfs/xfs_btree.c +++ b/fs/xfs/libxfs/xfs_btree.c @@ -1820,6 +1820,7 @@ xfs_btree_lookup_get_block( out_bad: *blkp = NULL; + xfs_buf_corruption_error(bp); xfs_trans_brelse(cur->bc_tp, bp); return -EFSCORRUPTED; } @@ -1867,8 +1868,10 @@ xfs_btree_lookup( XFS_BTREE_STATS_INC(cur, lookup); /* No such thing as a zero-level tree. */ - if (cur->bc_nlevels == 0) + if (cur->bc_nlevels == 0) { + XFS_ERROR_REPORT(__func__, XFS_ERRLEVEL_LOW, cur->bc_mp); return -EFSCORRUPTED; + } block = NULL; keyno = 0; |
