| /linux/block/ |
| H A D | genhd.c | 59 void set_capacity(struct gendisk *disk, sector_t sectors) in set_capacity() argument 63 disk->disk_name, sectors, in set_capacity() 68 bdev_set_nr_sectors(disk->part0, sectors); in set_capacity() 76 bool set_capacity_and_notify(struct gendisk *disk, sector_t size) in set_capacity_and_notify() argument 78 sector_t capacity = get_capacity(disk); in set_capacity_and_notify() 81 set_capacity(disk, size); in set_capacity_and_notify() 89 !disk_live(disk) || in set_capacity_and_notify() 90 (disk->flags & GENHD_FL_HIDDEN)) in set_capacity_and_notify() 94 disk->disk_name, capacity, size); in set_capacity_and_notify() 102 kobject_uevent_env(&disk_to_dev(disk)->kobj, KOBJ_CHANGE, envp); in set_capacity_and_notify() [all …]
|
| H A D | disk-events.c | 12 struct gendisk *disk; /* the associated disk */ member 41 static unsigned long disk_events_poll_jiffies(struct gendisk *disk) in disk_events_poll_jiffies() argument 43 struct disk_events *ev = disk->ev; in disk_events_poll_jiffies() 52 else if (disk->event_flags & DISK_EVENT_FLAG_POLL) in disk_events_poll_jiffies() 73 void disk_block_events(struct gendisk *disk) in disk_block_events() argument 75 struct disk_events *ev = disk->ev; in disk_block_events() 93 cancel_delayed_work_sync(&disk->ev->dwork); in disk_block_events() 98 static void __disk_unblock_events(struct gendisk *disk, bool check_now) in __disk_unblock_events() argument 100 struct disk_events *ev = disk->ev; in __disk_unblock_events() 112 intv = disk_events_poll_jiffies(disk); in __disk_unblock_events() [all …]
|
| H A D | blk-zoned.c | 68 struct gendisk *disk; member 77 static inline bool disk_need_zone_resources(struct gendisk *disk) in disk_need_zone_resources() argument 86 return queue_is_mq(disk->queue) || in disk_need_zone_resources() 87 queue_emulates_zone_append(disk->queue); in disk_need_zone_resources() 90 static inline unsigned int disk_zone_wplugs_hash_size(struct gendisk *disk) in disk_zone_wplugs_hash_size() argument 92 return 1U << disk->zone_wplugs_hash_bits; in disk_zone_wplugs_hash_size() 156 static void disk_zone_set_cond(struct gendisk *disk, sector_t sector, in disk_zone_set_cond() argument 162 zones_cond = rcu_dereference(disk->zones_cond); in disk_zone_set_cond() 164 unsigned int zno = disk_zone_no(disk, sector); in disk_zone_set_cond() 193 struct gendisk *disk = bdev->bd_disk; in bdev_zone_is_seq() local [all …]
|
| H A D | blk-sysfs.c | 25 ssize_t (*show)(struct gendisk *disk, char *page); 26 ssize_t (*show_limit)(struct gendisk *disk, char *page); 28 ssize_t (*store)(struct gendisk *disk, const char *page, size_t count); 29 int (*store_limit)(struct gendisk *disk, const char *page, 54 static ssize_t queue_requests_show(struct gendisk *disk, char *page) in queue_requests_show() argument 58 mutex_lock(&disk->queue->elevator_lock); in queue_requests_show() 59 ret = queue_var_show(disk->queue->nr_requests, page); in queue_requests_show() 60 mutex_unlock(&disk->queue->elevator_lock); in queue_requests_show() 65 queue_requests_store(struct gendisk *disk, const char *page, size_t count) in queue_requests_store() argument 67 struct request_queue *q = disk->queue; in queue_requests_store() [all …]
|
| H A D | blk-ia-ranges.c | 108 int disk_register_independent_access_ranges(struct gendisk *disk) in disk_register_independent_access_ranges() argument 110 struct blk_independent_access_ranges *iars = disk->ia_ranges; in disk_register_independent_access_ranges() 111 struct request_queue *q = disk->queue; in disk_register_independent_access_ranges() 125 &disk->queue_kobj, "%s", in disk_register_independent_access_ranges() 128 disk->ia_ranges = NULL; in disk_register_independent_access_ranges() 151 void disk_unregister_independent_access_ranges(struct gendisk *disk) in disk_unregister_independent_access_ranges() argument 153 struct request_queue *q = disk->queue; in disk_unregister_independent_access_ranges() 154 struct blk_independent_access_ranges *iars = disk->ia_ranges; in disk_unregister_independent_access_ranges() 171 disk->ia_ranges = NULL; in disk_unregister_independent_access_ranges() 191 static bool disk_check_ia_ranges(struct gendisk *disk, in disk_check_ia_ranges() argument [all …]
|
| H A D | holder.c | 14 struct gendisk *disk) in bd_find_holder_disk() argument 18 list_for_each_entry(holder, &disk->slave_bdevs, list) in bd_find_holder_disk() 62 int bd_link_disk_holder(struct block_device *bdev, struct gendisk *disk) in bd_link_disk_holder() argument 67 if (WARN_ON_ONCE(!disk->slave_dir)) in bd_link_disk_holder() 70 if (bdev->bd_disk == disk) in bd_link_disk_holder() 88 holder = bd_find_holder_disk(bdev, disk); in bd_link_disk_holder() 105 ret = add_symlink(disk->slave_dir, bdev_kobj(bdev)); in bd_link_disk_holder() 108 ret = add_symlink(bdev->bd_holder_dir, &disk_to_dev(disk)->kobj); in bd_link_disk_holder() 111 list_add(&holder->list, &disk->slave_bdevs); in bd_link_disk_holder() 117 del_symlink(disk->slave_dir, bdev_kobj(bdev)); in bd_link_disk_holder() [all …]
|
| H A D | blk-wbt.h | 7 void wbt_init_enable_default(struct gendisk *disk); 8 void wbt_disable_default(struct gendisk *disk); 9 void wbt_enable_default(struct gendisk *disk); 13 int wbt_set_lat(struct gendisk *disk, s64 val); 17 static inline void wbt_init_enable_default(struct gendisk *disk) in wbt_init_enable_default() argument 21 static inline void wbt_disable_default(struct gendisk *disk) in wbt_disable_default() argument 24 static inline void wbt_enable_default(struct gendisk *disk) in wbt_enable_default() argument
|
| H A D | blk-wbt.c | 96 static int wbt_init(struct gendisk *disk, struct rq_wb *rwb); 170 struct backing_dev_info *bdi = rwb->rqos.disk->bdi; in wb_recent_wait() 212 else if (blk_queue_write_cache(rwb->rqos.disk->queue) && in wbt_rqw_done() 309 struct backing_dev_info *bdi = rwb->rqos.disk->bdi; in latency_exceeded() 362 struct backing_dev_info *bdi = rwb->rqos.disk->bdi; in rwb_trace_step() 432 if (!rwb->rqos.disk) in wb_timer_fn() 437 trace_wbt_timer(rwb->rqos.disk->bdi, status, rqd->scale_step, inflight); in wb_timer_fn() 739 static bool __wbt_enable_default(struct gendisk *disk) in __wbt_enable_default() argument 741 struct request_queue *q = disk->queue; in __wbt_enable_default() 745 mutex_lock(&disk->rqos_state_mutex); in __wbt_enable_default() [all …]
|
| /linux/block/partitions/ |
| H A D | core.c | 133 state->disk = hd; in check_partition() 294 static struct block_device *add_partition(struct gendisk *disk, int partno, in add_partition() argument 299 struct device *ddev = disk_to_dev(disk); in add_partition() 305 lockdep_assert_held(&disk->open_mutex); in add_partition() 314 if (bdev_is_zoned(disk->part0)) { in add_partition() 316 disk->disk_name); in add_partition() 320 if (xa_load(&disk->part_tbl, partno)) in add_partition() 324 get_device(disk_to_dev(disk)); in add_partition() 327 bdev = bdev_alloc(disk, partno); in add_partition() 347 if (bdev_partno(bdev) < disk->minors) { in add_partition() [all …]
|
| H A D | amiga.c | 56 state->disk->disk_name, blk); in amiga_partition() 78 state->disk->disk_name, blk); in amiga_partition() 97 state->disk->disk_name, blk, part); in amiga_partition() 103 state->disk->disk_name, blk); in amiga_partition() 127 state->disk->disk_name, cylblk); in amiga_partition() 134 state->disk->disk_name, cylblk, in amiga_partition() 144 state->disk->disk_name, part); in amiga_partition() 165 state->disk->disk_name, part, in amiga_partition() 171 state->disk->disk_name, part, in amiga_partition()
|
| /linux/arch/m68k/emu/ |
| H A D | nfblock.c | 57 struct gendisk *disk; member 80 static int nfhd_getgeo(struct gendisk *disk, struct hd_geometry *geo) in nfhd_getgeo() argument 82 struct nfhd_device *dev = disk->private_data; in nfhd_getgeo() 124 dev->disk = blk_alloc_disk(&lim, NUMA_NO_NODE); in nfhd_init_one() 125 if (IS_ERR(dev->disk)) { in nfhd_init_one() 126 err = PTR_ERR(dev->disk); in nfhd_init_one() 130 dev->disk->major = major_num; in nfhd_init_one() 131 dev->disk->first_minor = dev_id * 16; in nfhd_init_one() 132 dev->disk->minors = 16; in nfhd_init_one() 133 dev->disk->fops = &nfhd_ops; in nfhd_init_one() [all …]
|
| /linux/drivers/block/ |
| H A D | n64cart.c | 121 struct gendisk *disk; in n64cart_probe() local 138 disk = blk_alloc_disk(&lim, NUMA_NO_NODE); in n64cart_probe() 139 if (IS_ERR(disk)) { in n64cart_probe() 140 err = PTR_ERR(disk); in n64cart_probe() 144 disk->first_minor = 0; in n64cart_probe() 145 disk->flags = GENHD_FL_NO_PART; in n64cart_probe() 146 disk->fops = &n64cart_fops; in n64cart_probe() 147 disk->private_data = &pdev->dev; in n64cart_probe() 148 strcpy(disk->disk_name, "n64cart"); in n64cart_probe() 150 set_capacity(disk, size >> SECTOR_SHIFT); in n64cart_probe() [all …]
|
| H A D | z2ram.c | 143 static int z2_open(struct gendisk *disk, blk_mode_t mode) in z2_open() argument 145 int device = disk->first_minor; in z2_open() 290 static void z2_release(struct gendisk *disk) in z2_release() argument 317 struct gendisk *disk; in z2ram_register_disk() local 320 disk = blk_mq_alloc_disk(&tag_set, NULL, NULL); in z2ram_register_disk() 321 if (IS_ERR(disk)) in z2ram_register_disk() 322 return PTR_ERR(disk); in z2ram_register_disk() 324 disk->major = Z2RAM_MAJOR; in z2ram_register_disk() 325 disk->first_minor = minor; in z2ram_register_disk() 326 disk->minors = 1; in z2ram_register_disk() [all …]
|
| H A D | ataflop.c | 301 struct gendisk *disk[NUM_DISK_MINORS]; member 450 static int floppy_open(struct gendisk *disk, blk_mode_t mode); 451 static void floppy_release(struct gendisk *disk); 761 q = unit[drive].disk[type]->queue; in do_format() 1185 set_capacity(unit[SelectedDrive].disk[0], in fd_rwsec_done1() 1200 set_capacity(unit[SelectedDrive].disk[0], in fd_rwsec_done1() 1436 static unsigned int floppy_check_events(struct gendisk *disk, in floppy_check_events() argument 1439 struct atari_floppy_struct *p = disk->private_data; in floppy_check_events() 1459 static int floppy_revalidate(struct gendisk *disk) in floppy_revalidate() argument 1461 struct atari_floppy_struct *p = disk->private_data; in floppy_revalidate() [all …]
|
| H A D | nbd.c | 124 struct gendisk *disk; member 163 #define nbd_name(nbd) ((nbd)->disk->disk_name) 181 return disk_to_dev(nbd->disk); in nbd_to_dev() 239 struct gendisk *disk = dev_to_disk(dev); in pid_show() local 240 struct nbd_device *nbd = disk->private_data; in pid_show() 253 struct gendisk *disk = dev_to_disk(dev); in backend_show() local 254 struct nbd_device *nbd = disk->private_data; in backend_show() 266 struct gendisk *disk = nbd->disk; in nbd_dev_remove() local 268 del_gendisk(disk); in nbd_dev_remove() 279 put_disk(disk); in nbd_dev_remove() [all …]
|
| H A D | swim.c | 190 struct gendisk *disk; member 611 static int floppy_open(struct gendisk *disk, blk_mode_t mode) in floppy_open() argument 613 struct floppy_state *fs = disk->private_data; in floppy_open() 635 set_capacity(fs->disk, fs->total_secs); in floppy_open() 641 if (disk_check_media_change(disk) && fs->disk_in) in floppy_open() 660 static int floppy_unlocked_open(struct gendisk *disk, blk_mode_t mode) in floppy_unlocked_open() argument 665 ret = floppy_open(disk, mode); in floppy_unlocked_open() 671 static void floppy_release(struct gendisk *disk) in floppy_release() argument 673 struct floppy_state *fs = disk->private_data; in floppy_release() 714 static int floppy_getgeo(struct gendisk *disk, struct hd_geometry *geo) in floppy_getgeo() argument [all …]
|
| H A D | virtio_blk.c | 68 struct gendisk *disk; member 373 blk_mq_start_stopped_hw_queues(vblk->disk->queue, true); in virtblk_done() 531 struct request_queue *q = vblk->disk->queue; in virtblk_alloc_report_buffer() 536 get_capacity(vblk->disk) >> ilog2(vblk->zone_sectors)); in virtblk_alloc_report_buffer() 560 struct request_queue *q = vblk->disk->queue; in virtblk_submit_zone_report() 593 if (zone.start + vblk->zone_sectors <= get_capacity(vblk->disk)) in virtblk_parse_zone() 596 zone.len = get_capacity(vblk->disk) - zone.start; in virtblk_parse_zone() 654 return disk_report_zone(vblk->disk, &zone, idx, args); in virtblk_parse_zone() 657 static int virtblk_report_zones(struct gendisk *disk, sector_t sector, in virtblk_report_zones() argument 661 struct virtio_blk *vblk = disk->private_data; in virtblk_report_zones() [all …]
|
| H A D | brd.c | 297 struct gendisk *disk; in brd_alloc() local 327 disk = brd->brd_disk = blk_alloc_disk(&lim, NUMA_NO_NODE); in brd_alloc() 328 if (IS_ERR(disk)) { in brd_alloc() 329 err = PTR_ERR(disk); in brd_alloc() 332 disk->major = RAMDISK_MAJOR; in brd_alloc() 333 disk->first_minor = i * max_part; in brd_alloc() 334 disk->minors = max_part; in brd_alloc() 335 disk->fops = &brd_fops; in brd_alloc() 336 disk->private_data = brd; in brd_alloc() 337 strscpy(disk->disk_name, buf, DISK_NAME_LEN); in brd_alloc() [all …]
|
| /linux/drivers/nvme/host/ |
| H A D | multipath.c | 113 if (h->disk) in nvme_mpath_unfreeze() 114 blk_mq_unfreeze_queue_nomemrestore(h->disk->queue); in nvme_mpath_unfreeze() 123 if (h->disk) in nvme_mpath_wait_freeze() 124 blk_mq_freeze_queue_wait(h->disk->queue); in nvme_mpath_wait_freeze() 133 if (h->disk) in nvme_mpath_start_freeze() 134 blk_freeze_queue_start(h->disk->queue); in nvme_mpath_start_freeze() 158 bio_set_dev(bio, ns->head->disk->part0); in nvme_failover_req() 183 struct gendisk *disk = ns->head->disk; in nvme_mpath_start_request() local 191 if (!blk_queue_io_stat(disk->queue) || blk_rq_is_passthrough(rq) || in nvme_mpath_start_request() 196 nvme_req(rq)->start_time = bdev_start_io_acct(disk->part0, req_op(rq), in nvme_mpath_start_request() [all …]
|
| H A D | trace.h | 38 static inline void __assign_disk_name(char *name, struct gendisk *disk) in __assign_disk_name() argument 40 if (disk) in __assign_disk_name() 41 memcpy(name, disk->disk_name, DISK_NAME_LEN); in __assign_disk_name() 51 __array(char, disk, DISK_NAME_LEN) 71 __assign_disk_name(__entry->disk, req->q->disk); 76 __entry->ctrl_id, __print_disk_name(__entry->disk), 89 __array(char, disk, DISK_NAME_LEN) 106 __assign_disk_name(__entry->disk, req->q->disk); 109 __entry->ctrl_id, __print_disk_name(__entry->disk), 146 __array(char, disk, DISK_NAME_LEN) [all …]
|
| /linux/drivers/scsi/ |
| H A D | sr.c | 140 static inline struct scsi_cd *scsi_cd(struct gendisk *disk) in scsi_cd() argument 142 return disk->private_data; in scsi_cd() 302 struct scsi_cd *cd = scsi_cd(rq->q->disk); in sr_done() 342 if (error_sector < get_capacity(cd->disk) && in sr_done() 344 set_capacity(cd->disk, error_sector); in sr_done() 369 cd = scsi_cd(rq->q->disk); in sr_init_command() 495 static int sr_block_open(struct gendisk *disk, blk_mode_t mode) in sr_block_open() argument 497 struct scsi_cd *cd = scsi_cd(disk); in sr_block_open() 505 if (disk_check_media_change(disk)) { in sr_block_open() 521 static void sr_block_release(struct gendisk *disk) in sr_block_release() argument [all …]
|
| /linux/drivers/md/ |
| H A D | dm-era-target.c | 203 struct superblock_disk *disk = dm_block_data(b); in sb_prepare_for_write() local 205 disk->blocknr = cpu_to_le64(dm_block_location(b)); in sb_prepare_for_write() 206 disk->csum = cpu_to_le32(dm_bm_checksum(&disk->flags, in sb_prepare_for_write() 211 static int check_metadata_version(struct superblock_disk *disk) in check_metadata_version() argument 213 uint32_t metadata_version = le32_to_cpu(disk->version); in check_metadata_version() 228 struct superblock_disk *disk = dm_block_data(b); in sb_check() local 231 if (dm_block_location(b) != le64_to_cpu(disk->blocknr)) { in sb_check() 233 __func__, le64_to_cpu(disk->blocknr), in sb_check() 238 if (le64_to_cpu(disk->magic) != SUPERBLOCK_MAGIC) { in sb_check() 240 __func__, le64_to_cpu(disk->magic), in sb_check() [all …]
|
| /linux/Documentation/admin-guide/blockdev/ |
| H A D | ramdisk.rst | 2 Using the RAM disk block device with Linux 16 The RAM disk driver is a way to use main system memory as a block device. It 22 The RAM disk dynamically grows as more space is required. It does this by using 26 The RAM disk supports up to 16 RAM disks by default, and can be reconfigured 31 To use RAM disk support with your system, run './MAKEDEV ram' from the /dev 35 The new RAM disk also has the ability to load compressed RAM disk images, 37 rescue floppy disk. 48 This parameter tells the RAM disk driver to set up RAM disks of N k size. The 80 If you make a boot disk that has LILO, then for the above, you would use:: 87 To create a RAM disk image, you will need a spare block device to [all …]
|
| /linux/drivers/block/drbd/ |
| H A D | drbd_state.c | 127 device_state_change->disk_state[OLD] = device->state.disk; in remember_old_state() 178 device_state_change->disk_state[NEW] = device->state.disk; in remember_new_state() 303 if (device->state.disk != D_DISKLESS || in conn_all_vols_unconf() 376 disk_state = max_t(enum drbd_disk_state, disk_state, device->state.disk); in conn_highest_disk() 392 disk_state = min_t(enum drbd_disk_state, disk_state, device->state.disk); in conn_lowest_disk() 474 (os.disk != D_FAILED && ns.disk == D_FAILED))) || in cl_wide_st_chg() 675 return drbd_req_state(device, NS(disk, D_FAILED), in request_detach() 689 device->state.disk != D_FAILED); in drbd_request_detach_interruptible() 722 drbd_disk_str(ns.disk), in print_st() 762 if (ns.disk != os.disk && flags & CS_DC_DISK) in print_state_change() [all …]
|
| /linux/drivers/md/bcache/ |
| H A D | super.c | 735 static int open_dev(struct gendisk *disk, blk_mode_t mode) in open_dev() argument 737 struct bcache_device *d = disk->private_data; in open_dev() 798 bd_unlink_disk_holder(ca->bdev, d->disk); in bcache_device_unlink() 808 bd_link_disk_holder(ca->bdev, d->disk); in bcache_device_link() 871 struct gendisk *disk = d->disk; in bcache_device_free() local 875 if (disk) in bcache_device_free() 876 pr_info("%s stopped\n", disk->disk_name); in bcache_device_free() 883 if (disk) { in bcache_device_free() 885 first_minor_to_idx(disk->first_minor)); in bcache_device_free() 886 put_disk(disk); in bcache_device_free() [all …]
|