Lines Matching refs:disk
669 bd_unlink_disk_holder(ca->bdev, d->disk); in bcache_device_unlink()
680 bd_link_disk_holder(ca->bdev, d->disk); in bcache_device_link()
726 pr_info("%s stopped", d->disk->disk_name); in bcache_device_free()
730 if (d->disk && d->disk->flags & GENHD_FL_UP) in bcache_device_free()
731 del_gendisk(d->disk); in bcache_device_free()
732 if (d->disk && d->disk->queue) in bcache_device_free()
733 blk_cleanup_queue(d->disk->queue); in bcache_device_free()
734 if (d->disk) { in bcache_device_free()
735 ida_simple_remove(&bcache_minor, d->disk->first_minor); in bcache_device_free()
736 put_disk(d->disk); in bcache_device_free()
785 !(d->disk = alloc_disk(1))) { in bcache_device_init()
790 set_capacity(d->disk, sectors); in bcache_device_init()
791 snprintf(d->disk->disk_name, DISK_NAME_LEN, "bcache%i", minor); in bcache_device_init()
793 d->disk->major = bcache_major; in bcache_device_init()
794 d->disk->first_minor = minor; in bcache_device_init()
795 d->disk->fops = &bcache_ops; in bcache_device_init()
796 d->disk->private_data = d; in bcache_device_init()
803 d->disk->queue = q; in bcache_device_init()
815 set_bit(QUEUE_FLAG_NONROT, &d->disk->queue->queue_flags); in bcache_device_init()
816 clear_bit(QUEUE_FLAG_ADD_RANDOM, &d->disk->queue->queue_flags); in bcache_device_init()
817 set_bit(QUEUE_FLAG_DISCARD, &d->disk->queue->queue_flags); in bcache_device_init()
839 struct bcache_device *d = &dc->disk; in bch_cached_dev_run()
868 add_disk(d->disk); in bch_cached_dev_run()
869 bd_link_disk_holder(dc->bdev, dc->disk.disk); in bch_cached_dev_run()
872 kobject_uevent_env(&disk_to_dev(d->disk)->kobj, KOBJ_CHANGE, env); in bch_cached_dev_run()
876 if (sysfs_create_link(&d->kobj, &disk_to_dev(d->disk)->kobj, "dev") || in bch_cached_dev_run()
877 sysfs_create_link(&disk_to_dev(d->disk)->kobj, &d->kobj, "bcache")) in bch_cached_dev_run()
888 BUG_ON(!test_bit(BCACHE_DEV_DETACHING, &dc->disk.flags)); in cached_dev_detach_finish()
899 bcache_device_detach(&dc->disk); in cached_dev_detach_finish()
902 clear_bit(BCACHE_DEV_DETACHING, &dc->disk.flags); in cached_dev_detach_finish()
903 clear_bit(BCACHE_DEV_UNLINK_DONE, &dc->disk.flags); in cached_dev_detach_finish()
910 closure_put(&dc->disk.cl); in cached_dev_detach_finish()
917 if (test_bit(BCACHE_DEV_CLOSING, &dc->disk.flags)) in bch_cached_dev_detach()
920 if (test_and_set_bit(BCACHE_DEV_DETACHING, &dc->disk.flags)) in bch_cached_dev_detach()
927 closure_get(&dc->disk.cl); in bch_cached_dev_detach()
944 if (dc->disk.c) { in bch_cached_dev_attach()
1007 bcache_device_attach(&dc->disk, c, u - c->uuids); in bch_cached_dev_attach()
1033 bcache_device_link(&dc->disk, c, "bdev"); in bch_cached_dev_attach()
1039 bdevname(dc->bdev, buf), dc->disk.disk->disk_name, in bch_cached_dev_attach()
1040 dc->disk.c->sb.set_uuid); in bch_cached_dev_attach()
1047 disk.kobj); in bch_cached_dev_release()
1054 struct cached_dev *dc = container_of(cl, struct cached_dev, disk.cl); in cached_dev_free()
1063 bd_unlink_disk_holder(dc->bdev, dc->disk.disk); in cached_dev_free()
1064 bcache_device_free(&dc->disk); in cached_dev_free()
1074 kobject_put(&dc->disk.kobj); in cached_dev_free()
1079 struct cached_dev *dc = container_of(cl, struct cached_dev, disk.cl); in cached_dev_flush()
1080 struct bcache_device *d = &dc->disk; in cached_dev_flush()
1100 closure_init(&dc->disk.cl, NULL); in cached_dev_init()
1101 set_closure_fn(&dc->disk.cl, cached_dev_flush, system_wq); in cached_dev_init()
1102 kobject_init(&dc->disk.kobj, &bch_cached_dev_ktype); in cached_dev_init()
1107 bch_cache_accounting_init(&dc->accounting, &dc->disk.cl); in cached_dev_init()
1116 dc->disk.stripe_size = q->limits.io_opt >> 9; in cached_dev_init()
1118 if (dc->disk.stripe_size) in cached_dev_init()
1122 ret = bcache_device_init(&dc->disk, block_size, in cached_dev_init()
1127 set_capacity(dc->disk.disk, in cached_dev_init()
1130 dc->disk.disk->queue->backing_dev_info.ra_pages = in cached_dev_init()
1131 max(dc->disk.disk->queue->backing_dev_info.ra_pages, in cached_dev_init()
1163 if (kobject_add(&dc->disk.kobj, &part_to_dev(bdev->bd_part)->kobj, in register_bdev()
1166 if (bch_cache_accounting_add_kobjs(&dc->accounting, &dc->disk.kobj)) in register_bdev()
1182 bcache_device_stop(&dc->disk); in register_bdev()
1231 add_disk(d->disk); in flash_dev_run()
1233 if (kobject_add(&d->kobj, &disk_to_dev(d->disk)->kobj, "bcache")) in flash_dev_run()
1424 struct cached_dev, disk); in __cache_set_unregister()
2030 bcache_device_stop(&dc->disk); in bcache_reboot()