mirror of
https://github.com/edk2-porting/linux-next.git
synced 2025-01-21 03:54:03 +08:00
Btrfs: do not overwrite error return value in the get device stats ioctl
If the call to btrfs_get_dev_stats() failed we would overwrite the error returned to user space with -EFAULT if the call to copy_to_user() failed as well. Fix that by calling copy_to_user() only if btrfs_get_dev_stats() returned success. Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de> Signed-off-by: Filipe Manana <fdmanana@suse.com> Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
parent
4fa99b008f
commit
eee9957754
@ -4438,7 +4438,7 @@ static long btrfs_ioctl_get_dev_stats(struct btrfs_fs_info *fs_info,
|
||||
|
||||
ret = btrfs_get_dev_stats(fs_info, sa);
|
||||
|
||||
if (copy_to_user(arg, sa, sizeof(*sa)))
|
||||
if (ret == 0 && copy_to_user(arg, sa, sizeof(*sa)))
|
||||
ret = -EFAULT;
|
||||
|
||||
kfree(sa);
|
||||
|
Loading…
Reference in New Issue
Block a user