mirror of
https://github.com/torvalds/linux.git
synced 2026-07-28 18:21:24 +02:00
btrfs: stop checking for greater then zero return values in btrfs_sync_file()
The value of 'ret' can never be greater than zero when we reach the end of
btrfs_sync_file() but we have this ternary operator converting any such
value into -EIO. This logic exists since the first fsync implementation,
added in 2007 by commit 8fd17795b2 ("Btrfs: early fsync support"), when
all that fsync did was simply to commit a transaction, but even a call to
btrfs_commit_transaction() could never return a value greater than zero.
So stop checking for a greater than zero value and assert that 'ret' is
never greater than zero, to catch any eventual regression during future
development.
Reviewed-by: Johannes Thumshirn <johannes.thumshirn@wdc.com>
Signed-off-by: Filipe Manana <fdmanana@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
17819dc282
commit
e7c3cfb544
|
|
@ -1810,10 +1810,11 @@ int btrfs_sync_file(struct file *file, loff_t start, loff_t end, int datasync)
|
|||
free_extent_buffer(ctx.scratch_eb);
|
||||
ASSERT(list_empty(&ctx.list));
|
||||
ASSERT(list_empty(&ctx.conflict_inodes));
|
||||
ASSERT(ret <= 0, "ret=%d", ret);
|
||||
err = file_check_and_advance_wb_err(file);
|
||||
if (!ret)
|
||||
ret = err;
|
||||
return ret > 0 ? -EIO : ret;
|
||||
return ret;
|
||||
|
||||
out_release_extents:
|
||||
btrfs_release_log_ctx_extents(&ctx);
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user