This is a rework of the directory readahead panic fix based on a buffer
I/O count mechanism. See [1] for the original patch and subsequent
discussion leading to the solution as constituted.
This is split into multiple patches simply to break out some refactoring
and special buffer exclusion from the accounting mechanism. This
prevents the original problem (xfs/311) as well as passes an initial
xfstests run.
Brian
[1] http://oss.sgi.com/pipermail/xfs/2016-June/049946.html
Brian Foster (3):
xfs: helper to set flags on uncached buffer reads
xfs: exclude never-released buffers from buftarg I/O accounting
xfs: track and serialize in-flight async buffers against unmount
fs/xfs/xfs_buf.c | 177 ++++++++++++++++++++++++++++++++++++++++-------------
fs/xfs/xfs_buf.h | 8 +++
fs/xfs/xfs_log.c | 4 +-
fs/xfs/xfs_mount.c | 12 ++--
4 files changed, 151 insertions(+), 50 deletions(-)
--
2.5.5
|