Lines Matching refs:disk
14 struct gendisk *disk)
18 list_for_each_entry(holder, &disk->slave_bdevs, list)
35 * bd_link_disk_holder - create symlinks between holding disk and slave bdev
37 * @disk: the holding disk
43 * - from "slaves" directory of the holder @disk to the claimed @bdev
44 * - from "holders" directory of the @bdev to the holder @disk
46 * For example, if /dev/dm-0 maps to /dev/sda and disk for dm-0 is
53 * ensure that both @bdev and @disk are valid during the creation and
62 int bd_link_disk_holder(struct block_device *bdev, struct gendisk *disk)
67 if (WARN_ON_ONCE(!disk->slave_dir))
70 if (bdev->bd_disk == disk)
88 holder = bd_find_holder_disk(bdev, disk);
105 ret = add_symlink(disk->slave_dir, bdev_kobj(bdev));
108 ret = add_symlink(bdev->bd_holder_dir, &disk_to_dev(disk)->kobj);
111 list_add(&holder->list, &disk->slave_bdevs);
117 del_symlink(disk->slave_dir, bdev_kobj(bdev));
131 * @disk: the holding disk
138 void bd_unlink_disk_holder(struct block_device *bdev, struct gendisk *disk)
142 if (WARN_ON_ONCE(!disk->slave_dir))
146 holder = bd_find_holder_disk(bdev, disk);
148 del_symlink(disk->slave_dir, bdev_kobj(bdev));
149 del_symlink(holder->holder_dir, &disk_to_dev(disk)->kobj);