diff options
author | Dave Chinner <dchinner@redhat.com> | 2014-10-01 23:04:56 (GMT) |
---|---|---|
committer | Dave Chinner <david@fromorbit.com> | 2014-10-01 23:04:56 (GMT) |
commit | 2718775469a521c8b35442db5d665ac0c8c3c8ac (patch) | |
tree | 0d8392adf53361e73d76e40ed51a5e03cf6b057b /init | |
parent | 8dac39219827113f14e97507646a610ca426b69e (diff) | |
download | linux-2718775469a521c8b35442db5d665ac0c8c3c8ac.tar.xz |
xfs: xfs_bioerror can die.
Internal buffer write error handling is a mess due to the unnatural
split between xfs_bioerror and xfs_bioerror_relse().
xfs_bwrite() only does sync IO and determines the handler to
call based on b_iodone, so for this caller the only difference
between xfs_bioerror() and xfs_bioerror_release() is the XBF_DONE
flag. We don't care what the XBF_DONE flag state is because we stale
the buffer in both paths - the next buffer lookup will clear
XBF_DONE because XBF_STALE is set. Hence we can use common
error handling for xfs_bwrite().
__xfs_buf_delwri_submit() is a similar - it's only ever called
on writes - all sync or async - and again there's no reason to
handle them any differently at all.
Clean up the nasty error handling and remove xfs_bioerror().
Signed-off-by: Dave Chinner <dchinner@redhat.com>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Dave Chinner <david@fromorbit.com>
Diffstat (limited to 'init')
0 files changed, 0 insertions, 0 deletions