]> git.baikalelectronics.ru Git - kernel.git/commit
xfs: bulkstat btree walk doesn't terminate
authorDave Chinner <dchinner@redhat.com>
Thu, 6 Nov 2014 21:29:57 +0000 (08:29 +1100)
committerDave Chinner <david@fromorbit.com>
Thu, 6 Nov 2014 21:29:57 +0000 (08:29 +1100)
commit38230b4f742d55119b773b104c5968b64f4e6685
treebd4e27a0faac80e48da23c1bbc19a9622ffe35ed
parenta0f26032e9384fcdb8fe871b0117ad374a978d16
xfs: bulkstat btree walk doesn't terminate

The bulkstat code has several different ways of detecting the end of
an AG when doing a walk. They are not consistently detected, and the
code that checks for the end of AG conditions is not consistently
coded. Hence the are conditions where the walk code can get stuck in
an endless loop making no progress and not triggering any
termination conditions.

Convert all the "tmp/i" status return codes from btree operations
to a common name (stat) and apply end-of-ag detection to these
operations consistently.

cc: <stable@vger.kernel.org> # 3.17
Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Brian Foster <bfoster@redhat.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
fs/xfs/xfs_itable.c