Lines Matching refs:device
835 str = "device add\n";
838 str = "device remove\n";
841 str = "device replace\n";
986 struct btrfs_device *device;
989 list_for_each_entry(device, &fs_devices->devices, dev_list)
990 btrfs_sysfs_remove_device(device);
993 list_for_each_entry(device, &seed->devices, dev_list)
994 btrfs_sysfs_remove_device(device);
1233 void btrfs_sysfs_remove_device(struct btrfs_device *device)
1243 devices_kobj = device->fs_info->fs_devices->devices_kobj;
1246 if (device->bdev) {
1247 disk = device->bdev->bd_part;
1252 if (device->devid_kobj.state_initialized) {
1253 kobject_del(&device->devid_kobj);
1254 kobject_put(&device->devid_kobj);
1255 wait_for_completion(&device->kobj_unregister);
1264 struct btrfs_device *device = container_of(kobj, struct btrfs_device,
1267 val = !!test_bit(BTRFS_DEV_STATE_IN_FS_METADATA, &device->dev_state);
1277 struct btrfs_device *device = container_of(kobj, struct btrfs_device,
1280 val = !!test_bit(BTRFS_DEV_STATE_MISSING, &device->dev_state);
1291 struct btrfs_device *device = container_of(kobj, struct btrfs_device,
1294 val = !!test_bit(BTRFS_DEV_STATE_REPLACE_TGT, &device->dev_state);
1304 struct btrfs_device *device = container_of(kobj, struct btrfs_device,
1307 val = !!test_bit(BTRFS_DEV_STATE_WRITEABLE, &device->dev_state);
1324 struct btrfs_device *device = container_of(kobj, struct btrfs_device,
1327 memset(&device->devid_kobj, 0, sizeof(struct kobject));
1328 complete(&device->kobj_unregister);
1337 int btrfs_sysfs_add_device(struct btrfs_device *device)
1348 devices_kobj = device->fs_info->fs_devices->devices_kobj;
1349 devinfo_kobj = device->fs_info->fs_devices->devinfo_kobj;
1355 if (device->bdev) {
1359 disk = device->bdev->bd_part;
1364 btrfs_warn(device->fs_info,
1365 "creating sysfs device link for devid %llu failed: %d",
1366 device->devid, ret);
1371 init_completion(&device->kobj_unregister);
1372 ret = kobject_init_and_add(&device->devid_kobj, &devid_ktype,
1373 devinfo_kobj, "%llu", device->devid);
1375 kobject_put(&device->devid_kobj);
1376 btrfs_warn(device->fs_info,
1378 device->devid, ret);
1389 struct btrfs_device *device;
1392 list_for_each_entry(device, &fs_devices->devices, dev_list) {
1393 ret = btrfs_sysfs_add_device(device);
1399 list_for_each_entry(device, &seed->devices, dev_list) {
1400 ret = btrfs_sysfs_add_device(device);
1439 void btrfs_sysfs_update_devid(struct btrfs_device *device)
1443 snprintf(tmp, sizeof(tmp), "%llu", device->devid);
1445 if (kobject_rename(&device->devid_kobj, tmp))
1446 btrfs_warn(device->fs_devices->fs_info,
1448 device->devid);
1458 * Can be called by the device discovery thread.
1477 "failed to init sysfs device interface");