xfs: strengthen btree pointer checks before use
authorDarrick J. Wong <darrick.wong@oracle.com>
Mon, 4 Jun 2018 20:58:34 +0000 (13:58 -0700)
committerDarrick J. Wong <darrick.wong@oracle.com>
Tue, 5 Jun 2018 01:25:05 +0000 (18:25 -0700)
commite63a1008ee08334ea6a9c9edb59b1d2763f5b231
treee831aa46e58916f523a26409f42a1cc8feaf8f23
parent4cbae4b816fd61e63abbe8330741e257fa95d4c5
xfs: strengthen btree pointer checks before use

Instead of ASSERTing on null btree pointers in xfs_btree_ptr_to_daddr,
use the new block number verifiers to ensure that the btree pointer
doesn't point to any sensitive areas (AG headers, past-EOFS) and return
-EFSCORRUPTED if this is the case.  Remove the ASSERT because on-disk
corruptions shouldn't trigger ASSERTs.

Signed-off-by: Darrick J. Wong <darrick.wong@oracle.com>
Reviewed-by: Dave Chinner <dchinner@redhat.com>
fs/xfs/libxfs/xfs_btree.c