diff --git a/fs/btrfs/super.c b/fs/btrfs/super.c index 7cd62307cd417..3381389ab93a7 100644 --- a/fs/btrfs/super.c +++ b/fs/btrfs/super.c @@ -2254,7 +2254,10 @@ static long btrfs_control_ioctl(struct file *file, unsigned int cmd, device = btrfs_scan_one_device(vol->name, BLK_OPEN_READ, false); if (IS_ERR_OR_NULL(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 ==