Lines Matching refs:disk

25 	struct gendisk *disk = md->disk;
46 args.next_sector < get_capacity(disk));
56 int dm_blk_report_zones(struct gendisk *disk, sector_t sector,
59 struct mapped_device *md = disk->private_data;
143 if (md->disk) {
144 bitmap_free(md->disk->conv_zones_bitmap);
145 md->disk->conv_zones_bitmap = NULL;
146 bitmap_free(md->disk->seq_zones_wlock);
147 md->disk->seq_zones_wlock = NULL;
181 struct gendisk *disk = md->disk;
185 if (!disk->conv_zones_bitmap) {
186 disk->conv_zones_bitmap = bitmap_zalloc(disk->nr_zones,
188 if (!disk->conv_zones_bitmap)
191 set_bit(idx, disk->conv_zones_bitmap);
195 if (!disk->seq_zones_wlock) {
196 disk->seq_zones_wlock = bitmap_zalloc(disk->nr_zones,
198 if (!disk->seq_zones_wlock)
203 kvcalloc(disk->nr_zones, sizeof(unsigned int),
228 struct gendisk *disk = md->disk;
236 if (!disk->nr_zones || disk->nr_zones != md->nr_zones)
246 ret = dm_blk_do_report_zones(md, t, 0, disk->nr_zones,
251 if (ret != disk->nr_zones) {
256 md->nr_zones = disk->nr_zones;
298 md->disk->nr_zones = bdev_nr_zones(md->disk->part0);
312 if (!get_capacity(md->disk))
331 sector_t sector = zno * bdev_zone_sectors(md->disk->part0);
370 sector_t zsectors = bdev_zone_sectors(md->disk->part0);
440 bdev_zone_sectors(md->disk->part0));
463 static inline void dm_zone_lock(struct gendisk *disk, unsigned int zno,
469 wait_on_bit_lock_io(disk->seq_zones_wlock, zno, TASK_UNINTERRUPTIBLE);
473 static inline void dm_zone_unlock(struct gendisk *disk, unsigned int zno,
479 WARN_ON_ONCE(!test_bit(zno, disk->seq_zones_wlock));
480 clear_bit_unlock(zno, disk->seq_zones_wlock);
482 wake_up_bit(disk->seq_zones_wlock, zno);
532 dm_zone_lock(md->disk, zno, clone);
542 dm_zone_unlock(md->disk, zno, clone);
566 dm_zone_unlock(md->disk, zno, clone);
571 dm_zone_unlock(md->disk, zno, clone);
588 struct gendisk *disk = md->disk;
605 (sector_t)bdev_zone_sectors(disk->part0) - 1;
646 dm_zone_unlock(disk, zno, clone);