mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2026-05-08 00:29:36 -04:00
btrfs: report filemap_fdata<write|wait>_range() error
In the function btrfs_write_marked_extents() and in __btrfs_wait_marked_extents() return the actual error if when filemap_fdata<write|wait>_range() fails. Suggested-by: Josef Bacik <josef@toxicpanda.com> Reviewed-by: Qu Wenruo <wqu@suse.com> Signed-off-by: Anand Jain <anand.jain@oracle.com> Reviewed-by: David Sterba <dsterba@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
@@ -1156,6 +1156,8 @@ int btrfs_write_marked_extents(struct btrfs_fs_info *fs_info,
|
||||
else if (wait_writeback)
|
||||
werr = filemap_fdatawait_range(mapping, start, end);
|
||||
free_extent_state(cached_state);
|
||||
if (werr)
|
||||
break;
|
||||
cached_state = NULL;
|
||||
cond_resched();
|
||||
start = end + 1;
|
||||
@@ -1198,6 +1200,8 @@ static int __btrfs_wait_marked_extents(struct btrfs_fs_info *fs_info,
|
||||
if (err)
|
||||
werr = err;
|
||||
free_extent_state(cached_state);
|
||||
if (werr)
|
||||
break;
|
||||
cached_state = NULL;
|
||||
cond_resched();
|
||||
start = end + 1;
|
||||
|
||||
Reference in New Issue
Block a user