On Wed, Sep 11, 2019 at 05:42:28PM +0100, fdman...@kernel.org wrote:
> From: Filipe Manana <fdman...@suse.com>
> 
> If lock_extent_buffer_for_io() fails, it returns a negative value, but its
> caller btree_write_cache_pages() ignores such error. This means that a
> call to flush_write_bio(), from lock_extent_buffer_for_io(), might have
> failed. We should make btree_write_cache_pages() notice such error values
> and stop immediatelly, making sure filemap_fdatawrite_range() returns an
> error to the transaction commit path. A failure from flush_write_bio()
> should also result in the endio callback end_bio_extent_buffer_writepage()
> being invoked, which sets the BTRFS_FS_*_ERR bits appropriately, so that
> there's no risk a transaction or log commit doesn't catch a writeback
> failure.
> 
> Signed-off-by: Filipe Manana <fdman...@suse.com>

Added to misc-next, thanks.

Reply via email to