On 2.11.2017 08:11, Anand Jain wrote:
> This patch maintains consistency of mode in device get and put. And is just
> a cleanup patch. There isn't any problem that was noticed, so no functional
> changes.
>
> Signed-off-by: Anand Jain <anand.jain@xxxxxxxxxx>
> ---
Reviewed-by: Nikolay Borisov <nborisov@xxxxxxxx>
> v2: commit update
> v3: commit update
>
> fs/btrfs/volumes.c | 16 ++++++++--------
> 1 file changed, 8 insertions(+), 8 deletions(-)
>
> diff --git a/fs/btrfs/volumes.c b/fs/btrfs/volumes.c
> index b39737568c22..765c2bd2d8d9 100644
> --- a/fs/btrfs/volumes.c
> +++ b/fs/btrfs/volumes.c
> @@ -2323,12 +2323,12 @@ int btrfs_init_new_device(struct btrfs_fs_info *fs_info, const char *device_path
> u64 tmp;
> int seeding_dev = 0;
> int ret = 0;
> + fmode_t flag = FMODE_WRITE | FMODE_EXCL;
>
> if (sb_rdonly(sb) && !fs_info->fs_devices->seeding)
> return -EROFS;
>
> - bdev = blkdev_get_by_path(device_path, FMODE_WRITE | FMODE_EXCL,
> - fs_info->bdev_holder);
> + bdev = blkdev_get_by_path(device_path, flag, fs_info->bdev_holder);
> if (IS_ERR(bdev))
> return PTR_ERR(bdev);
>
> @@ -2392,7 +2392,7 @@ int btrfs_init_new_device(struct btrfs_fs_info *fs_info, const char *device_path
> device->bdev = bdev;
> device->in_fs_metadata = 1;
> device->is_tgtdev_for_dev_replace = 0;
> - device->mode = FMODE_EXCL;
> + device->mode = flag;
> device->dev_stats_valid = 1;
> set_blocksize(device->bdev, BTRFS_BDEV_BLOCKSIZE);
>
> @@ -2506,7 +2506,7 @@ int btrfs_init_new_device(struct btrfs_fs_info *fs_info, const char *device_path
> btrfs_sysfs_rm_device_link(fs_info->fs_devices, device);
> kfree(device);
> error:
> - blkdev_put(bdev, FMODE_EXCL);
> + blkdev_put(bdev, flag);
> if (seeding_dev) {
> mutex_unlock(&uuid_mutex);
> up_write(&sb->s_umount);
> @@ -2526,6 +2526,7 @@ int btrfs_init_dev_replace_tgtdev(struct btrfs_fs_info *fs_info,
> struct rcu_string *name;
> u64 devid = BTRFS_DEV_REPLACE_DEVID;
> int ret = 0;
> + fmode_t flags = FMODE_WRITE | FMODE_EXCL;
>
> *device_out = NULL;
> if (fs_info->fs_devices->seeding) {
> @@ -2533,8 +2534,7 @@ int btrfs_init_dev_replace_tgtdev(struct btrfs_fs_info *fs_info,
> return -EINVAL;
> }
>
> - bdev = blkdev_get_by_path(device_path, FMODE_WRITE | FMODE_EXCL,
> - fs_info->bdev_holder);
> + bdev = blkdev_get_by_path(device_path, flags, fs_info->bdev_holder);
> if (IS_ERR(bdev)) {
> btrfs_err(fs_info, "target device %s is invalid!", device_path);
> return PTR_ERR(bdev);
> @@ -2595,7 +2595,7 @@ int btrfs_init_dev_replace_tgtdev(struct btrfs_fs_info *fs_info,
> device->bdev = bdev;
> device->in_fs_metadata = 1;
> device->is_tgtdev_for_dev_replace = 1;
> - device->mode = FMODE_EXCL;
> + device->mode = flags;
> device->dev_stats_valid = 1;
> set_blocksize(device->bdev, BTRFS_BDEV_BLOCKSIZE);
> device->fs_devices = fs_info->fs_devices;
> @@ -2608,7 +2608,7 @@ int btrfs_init_dev_replace_tgtdev(struct btrfs_fs_info *fs_info,
> return ret;
>
> error:
> - blkdev_put(bdev, FMODE_EXCL);
> + blkdev_put(bdev, flags);
> return ret;
> }
>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-btrfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html