btrfs: btrfs_init_new_device should use fs_info->dev_root

btrfs_init_new_device only uses the root passed in via the ioctl to
start the transaction.  Nothing else that happens is related to whatever
root the user used to initiate the ioctl.  We can drop the root requirement
and just use fs_info->dev_root instead.

Signed-off-by: Jeff Mahoney <jeffm@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
Jeff Mahoney 2016-06-21 20:16:08 -04:00 коммит произвёл David Sterba
Родитель 6bccf3ab1e
Коммит 5112febbc7
3 изменённых файлов: 4 добавлений и 3 удалений

Просмотреть файл

@ -2672,7 +2672,7 @@ static long btrfs_ioctl_add_dev(struct btrfs_root *root, void __user *arg)
}
vol_args->name[BTRFS_PATH_NAME_MAX] = '\0';
ret = btrfs_init_new_device(root, vol_args->name);
ret = btrfs_init_new_device(root->fs_info, vol_args->name);
if (!ret)
btrfs_info(root->fs_info, "disk added %s",vol_args->name);

Просмотреть файл

@ -2310,8 +2310,9 @@ error:
return ret;
}
int btrfs_init_new_device(struct btrfs_root *root, char *device_path)
int btrfs_init_new_device(struct btrfs_fs_info *fs_info, char *device_path)
{
struct btrfs_root *root = fs_info->dev_root;
struct request_queue *q;
struct btrfs_trans_handle *trans;
struct btrfs_device *device;

Просмотреть файл

@ -439,7 +439,7 @@ int btrfs_grow_device(struct btrfs_trans_handle *trans,
struct btrfs_device *btrfs_find_device(struct btrfs_fs_info *fs_info, u64 devid,
u8 *uuid, u8 *fsid);
int btrfs_shrink_device(struct btrfs_device *device, u64 new_size);
int btrfs_init_new_device(struct btrfs_root *root, char *path);
int btrfs_init_new_device(struct btrfs_fs_info *fs_info, char *path);
int btrfs_init_dev_replace_tgtdev(struct btrfs_root *root, char *device_path,
struct btrfs_device *srcdev,
struct btrfs_device **device_out);