[PATCH AUTOSEL 6.1 5/7] btrfs: fix warning on PTR_ERR() against NULL device at btrfs_control_ioctl()
From: Sasha Levin
Date: Sun Nov 24 2024 - 07:50:18 EST
From: Filipe Manana <fdmanana@xxxxxxxx>
[ Upstream commit 2342d6595b608eec94187a17dc112dd4c2a812fa ]
Smatch complains about calling PTR_ERR() against a NULL pointer:
fs/btrfs/super.c:2272 btrfs_control_ioctl() warn: passing zero to 'PTR_ERR'
Fix this by calling PTR_ERR() against the device pointer only if it
contains an error.
Reviewed-by: Qu Wenruo <wqu@xxxxxxxx>
Signed-off-by: Filipe Manana <fdmanana@xxxxxxxx>
Reviewed-by: David Sterba <dsterba@xxxxxxxx>
Signed-off-by: David Sterba <dsterba@xxxxxxxx>
Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>
---
fs/btrfs/super.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c
index d063379a031dc..3695c694dc0de 100644
--- a/fs/btrfs/super.c
+++ b/fs/btrfs/super.c
@@ -2520,7 +2520,10 @@ static long btrfs_control_ioctl(struct file *file, unsigned int cmd,
&btrfs_root_fs_type);
if (IS_ERR(device)) {
mutex_unlock(&uuid_mutex);
- ret = PTR_ERR(device);
+ if (IS_ERR(device))
+ ret = PTR_ERR(device);
+ else
+ ret = 0;
break;
}
ret = !(device->fs_devices->num_devices ==
--
2.43.0