mirror of
https://github.com/smaeul/u-boot.git
synced 2025-10-14 04:46:01 +01:00
fs: btrfs: Prevent error pointer dereference in list_subvolums()
If btrfs_read_fs_root() fails with -ENOENT, then we go to the next entry. Fine. But if it fails for a different reason then we need to clean up and return an error code. In the current code it doesn't clean up but instead dereferences "root" and crashes. Signed-off-by: Dan Carpenter <dan.carpenter@linaro.org> Reviewed-by: Marek Behún <kabel@kernel.org> Reviewed-by: Qu Wenruo <wqu@suse.com>
This commit is contained in:
parent
d8ac619a17
commit
c331efd087
@ -199,6 +199,7 @@ static int list_subvolums(struct btrfs_fs_info *fs_info)
|
||||
ret = PTR_ERR(root);
|
||||
if (ret == -ENOENT)
|
||||
goto next;
|
||||
goto out;
|
||||
}
|
||||
ret = list_one_subvol(root, result);
|
||||
if (ret < 0)
|
||||
|
Loading…
x
Reference in New Issue
Block a user