xfs: forbid AG btrees with level == 0
authorDarrick J. Wong <darrick.wong@oracle.com>
Mon, 5 Dec 2016 01:32:50 +0000 (12:32 +1100)
committerDave Chinner <david@fromorbit.com>
Mon, 5 Dec 2016 01:32:50 +0000 (12:32 +1100)
commitd2a047f31e86941fa896e0e3271536d50aba415e
tree0ff8117d63fcf7b839a3facd7f2ca307efdb60c0
parentf7a136aee3c1c3f7daf87197b3b3c361744a2812
xfs: forbid AG btrees with level == 0

There is no such thing as a zero-level AG btree since even a single-node
zero-records btree has one level.  Btree cursor constructors read
cur_nlevels straight from disk and then access things like
cur_bufs[cur_nlevels - 1] which is /really/ bad if cur_nlevels is zero!
Therefore, strengthen the verifiers to prevent this possibility.

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