|
@@ -605,6 +605,26 @@ static void init_feature_attrs(void)
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+int btrfs_kobj_rm_device(struct btrfs_fs_info *fs_info,
|
|
|
+ struct btrfs_device *one_device)
|
|
|
+{
|
|
|
+ struct hd_struct *disk;
|
|
|
+ struct kobject *disk_kobj;
|
|
|
+
|
|
|
+ if (!fs_info->device_dir_kobj)
|
|
|
+ return -EINVAL;
|
|
|
+
|
|
|
+ if (one_device) {
|
|
|
+ disk = one_device->bdev->bd_part;
|
|
|
+ disk_kobj = &part_to_dev(disk)->kobj;
|
|
|
+
|
|
|
+ sysfs_remove_link(fs_info->device_dir_kobj,
|
|
|
+ disk_kobj->name);
|
|
|
+ }
|
|
|
+
|
|
|
+ return 0;
|
|
|
+}
|
|
|
+
|
|
|
static int btrfs_kobj_add_device(struct btrfs_fs_info *fs_info)
|
|
|
{
|
|
|
int error = 0;
|