diff options
Diffstat (limited to 'fs/btrfs/dev-replace.c')
| -rw-r--r-- | fs/btrfs/dev-replace.c | 5 | 
1 files changed, 4 insertions, 1 deletions
diff --git a/fs/btrfs/dev-replace.c b/fs/btrfs/dev-replace.c index f982ef303f1c..862fbc206755 100644 --- a/fs/btrfs/dev-replace.c +++ b/fs/btrfs/dev-replace.c @@ -376,6 +376,10 @@ int btrfs_dev_replace_start(struct btrfs_root *root,  	WARN_ON(!tgt_device);  	dev_replace->tgtdev = tgt_device; +	ret = btrfs_kobj_add_device(tgt_device->fs_devices, tgt_device); +	if (ret) +		btrfs_error(root->fs_info, ret, "kobj add dev failed"); +  	printk_in_rcu(KERN_INFO  		      "BTRFS: dev_replace from %s (devid %llu) to %s started\n",  		      src_device->missing ? "<missing disk>" : @@ -584,7 +588,6 @@ static int btrfs_dev_replace_finishing(struct btrfs_fs_info *fs_info,  	/* replace the sysfs entry */  	btrfs_kobj_rm_device(fs_info->fs_devices, src_device); -	btrfs_kobj_add_device(fs_info->fs_devices, tgt_device);  	btrfs_rm_dev_replace_free_srcdev(fs_info, src_device);  	/* write back the superblocks */  |