Home
last modified time | relevance | path

Searched refs:disk (Results 1 – 25 of 373) sorted by relevance

12345678910>>...15

/linux/block/
H A Dgenhd.c59 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 Dblk-zoned.c73 struct gendisk *disk; member
82 static inline bool disk_need_zone_resources(struct gendisk *disk) in disk_need_zone_resources() argument
91 return queue_is_mq(disk->queue) || in disk_need_zone_resources()
92 queue_emulates_zone_append(disk->queue); in disk_need_zone_resources()
95 static inline unsigned int disk_zone_wplugs_hash_size(struct gendisk *disk) in disk_zone_wplugs_hash_size() argument
97 return 1U << disk->zone_wplugs_hash_bits; in disk_zone_wplugs_hash_size()
161 static void disk_zone_set_cond(struct gendisk *disk, sector_t sector, in disk_zone_set_cond() argument
167 zones_cond = rcu_dereference(disk->zones_cond); in disk_zone_set_cond()
169 unsigned int zno = disk_zone_no(disk, sector); in disk_zone_set_cond()
198 struct gendisk *disk = bdev->bd_disk; in bdev_zone_is_seq() local
[all …]
H A Derror-injection.c27 struct gendisk *disk = bio->bi_bdev->bd_disk; in __blk_error_inject() local
31 list_for_each_entry_rcu(inj, &disk->error_injection_list, entry) { in __blk_error_inject()
49 disk->part0, blk_status_to_str(inj->status), in __blk_error_inject()
61 static int error_inject_add(struct gendisk *disk, enum req_op op, in error_inject_add() argument
91 disk->part0, blk_status_to_str(status), in error_inject_add()
100 mutex_lock(&disk->error_injection_lock); in error_inject_add()
101 if (!disk_live(disk)) { in error_inject_add()
102 mutex_unlock(&disk->error_injection_lock); in error_inject_add()
106 if (list_empty(&disk->error_injection_list)) in error_inject_add()
108 list_add_rcu(&inj->entry, &disk->error_injection_list); in error_inject_add()
[all …]
H A Dholder.c14 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 Dblk-wbt.h7 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 Dblk-wbt.c96 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 …]
H A Dbdev.c501 struct block_device *bdev_alloc(struct gendisk *disk, u8 partno) in bdev_alloc() argument
520 bdev->bd_queue = disk->queue; in bdev_alloc()
521 if (partno && bdev_test_flag(disk->part0, BD_HAS_SUBMIT_BIO)) in bdev_alloc()
528 bdev->bd_disk = disk; in bdev_alloc()
771 struct gendisk *disk = bdev->bd_disk; in blkdev_get_whole() local
774 if (disk->fops->open) { in blkdev_get_whole()
775 ret = disk->fops->open(disk, mode); in blkdev_get_whole()
779 test_bit(GD_NEED_PART_SCAN, &disk->state)) in blkdev_get_whole()
780 bdev_disk_changed(disk, true); in blkdev_get_whole()
788 if (test_bit(GD_NEED_PART_SCAN, &disk->state)) { in blkdev_get_whole()
[all …]
H A Dblk-cgroup.c306 static struct blkcg_gq *blkg_alloc(struct blkcg *blkcg, struct gendisk *disk, in blkg_alloc() argument
313 blkg = kzalloc_node(sizeof(*blkg), gfp_mask, disk->queue->node); in blkg_alloc()
321 if (!blk_get_queue(disk->queue)) in blkg_alloc()
327 blkg->q = disk->queue; in blkg_alloc()
347 if (!blkcg_policy_enabled(disk->queue, pol)) in blkg_alloc()
351 pd = pol->pd_alloc_fn(disk, blkcg, gfp_mask); in blkg_alloc()
368 blk_put_queue(disk->queue); in blkg_alloc()
382 static struct blkcg_gq *blkg_create(struct blkcg *blkcg, struct gendisk *disk, in blkg_create() argument
388 lockdep_assert_held(&disk->queue->queue_lock); in blkg_create()
391 if (blk_queue_dying(disk->queue)) { in blkg_create()
[all …]
/linux/include/linux/
H A Dblkdev.h247 static inline unsigned int disk_openers(struct gendisk *disk) in disk_openers() argument
249 return atomic_read(&disk->part0->bd_openers); in disk_openers()
259 static inline bool disk_has_partscan(struct gendisk *disk) in disk_has_partscan() argument
261 return !(disk->flags & (GENHD_FL_NO_PART | GENHD_FL_HIDDEN)) && in disk_has_partscan()
262 !test_bit(GD_SUPPRESS_PART_SCAN, &disk->state); in disk_has_partscan()
271 #define disk_to_dev(disk) \ argument
272 (&((disk)->part0->bd_device))
275 #define disk_to_cdi(disk) ((disk)->cdi) argument
277 #define disk_to_cdi(disk) NULL argument
280 static inline dev_t disk_devt(struct gendisk *disk) in disk_devt() argument
[all …]
/linux/drivers/nvme/host/
H A Dmultipath.c123 if (h->disk) in nvme_mpath_unfreeze()
124 blk_mq_unfreeze_queue_nomemrestore(h->disk->queue); in nvme_mpath_unfreeze()
133 if (h->disk) in nvme_mpath_wait_freeze()
134 blk_mq_freeze_queue_wait(h->disk->queue); in nvme_mpath_wait_freeze()
143 if (h->disk) in nvme_mpath_start_freeze()
144 blk_freeze_queue_start(h->disk->queue); in nvme_mpath_start_freeze()
169 bio_set_dev(bio, ns->head->disk->part0); in nvme_failover_req()
181 struct gendisk *disk = ns->head->disk; in nvme_mpath_start_request() local
189 if (!blk_queue_io_stat(disk->queue) || in nvme_mpath_start_request()
193 !blk_rq_passthrough_stats(rq, disk->queue)) in nvme_mpath_start_request()
[all …]
H A Dtrace.h38 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/block/
H A Dz2ram.c143 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 Dataflop.c301 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 Dnbd.c124 struct gendisk *disk; member
163 #define nbd_name(nbd) ((nbd)->disk->disk_name)
182 return disk_to_dev(nbd->disk); in nbd_to_dev()
240 struct gendisk *disk = dev_to_disk(dev); in pid_show() local
241 struct nbd_device *nbd = disk->private_data; in pid_show()
254 struct gendisk *disk = dev_to_disk(dev); in backend_show() local
255 struct nbd_device *nbd = disk->private_data; in backend_show()
267 struct gendisk *disk = nbd->disk; in nbd_dev_remove() local
269 del_gendisk(disk); in nbd_dev_remove()
280 put_disk(disk); in nbd_dev_remove()
[all …]
H A Dswim.c190 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 Dbrd.c297 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/scsi/
H A Dsr.c140 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()
398 if (get_disk_ro(cd->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()
[all …]
/linux/Documentation/admin-guide/blockdev/
H A Dramdisk.rst2 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/md/
H A Ddm-era-target.c203 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/drivers/block/drbd/
H A Ddrbd_state.c127 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/Documentation/ABI/testing/
H A Dsysfs-fs-ext41 What: /sys/fs/ext4/<disk>/mb_stats
10 What: /sys/fs/ext4/<disk>/mb_group_prealloc
18 What: /sys/fs/ext4/<disk>/mb_max_to_scan
25 What: /sys/fs/ext4/<disk>/mb_min_to_scan
32 What: /sys/fs/ext4/<disk>/mb_order2_req
40 What: /sys/fs/ext4/<disk>/mb_stream_req
51 What: /sys/fs/ext4/<disk>/inode_readahead_blks
59 What: /sys/fs/ext4/<disk>/delayed_allocation_blocks
67 What: /sys/fs/ext4/<disk>/lifetime_write_kbytes
75 What: /sys/fs/ext4/<disk>/session_write_kbytes
[all …]
/linux/Documentation/driver-api/md/
H A Draid5-cache.rst5 Raid 4/5/6 could include an extra disk for data cache besides normal RAID
6 disks. The role of RAID disks isn't changed with the cache disk. The cache disk
19 In both modes, all writes to the array will hit cache disk first. This means
20 the cache disk must be fast and sustainable.
34 The write-through cache will cache all data on cache disk first. After the data
35 is safe on the cache disk, the data will be flushed onto RAID disks. The
40 filesystems) after the data is safe on RAID disks, so cache disk failure
41 doesn't cause data loss. Of course cache disk failure means the array is
44 In write-through mode, the cache disk isn't required to be big. Several
51 cached on cache disk. But the main goal of 'write-back' cache is to speed up
[all …]
/linux/drivers/cdrom/
H A Dgdrom.c96 struct gendisk *disk; member
477 static int gdrom_bdops_open(struct gendisk *disk, blk_mode_t mode) in gdrom_bdops_open() argument
481 disk_check_media_change(disk); in gdrom_bdops_open()
489 static void gdrom_bdops_release(struct gendisk *disk) in gdrom_bdops_release() argument
496 static unsigned int gdrom_bdops_check_events(struct gendisk *disk, in gdrom_bdops_check_events() argument
718 gd.disk->major = gdrom_major; in probe_gdrom_setupdisk()
719 gd.disk->first_minor = 1; in probe_gdrom_setupdisk()
720 gd.disk->minors = 1; in probe_gdrom_setupdisk()
721 gd.disk->flags |= GENHD_FL_NO_PART; in probe_gdrom_setupdisk()
722 strcpy(gd.disk->disk_name, GDROM_DEV_NAME); in probe_gdrom_setupdisk()
[all …]
/linux/Documentation/admin-guide/
H A Dldm.rst13 1MiB journalled database at the end of the physical disk. The size of
14 partitions is limited only by disk space. The maximum number of partitions is
25 Once the LDM driver has divided up the disk, you can use the MD driver to
28 To prevent legacy applications from repartitioning the disk, the LDM creates a
29 dummy MSDOS partition containing one disk-sized partition. This is what is
33 GPT label disk. This is not supported by the Linux LDM driver yet.
39 Below we have a 50MiB disk, divided into seven partitions.
43 The missing 1MiB at the end of the disk is where the LDM database is
67 disk, but the driver will sort them.
95 is a dummy MSDOS partition filling the whole disk. You won't be able to mount
[all …]
/linux/drivers/md/bcache/
H A Dwriteback.h82 int stripe = offset_to_stripe(&dc->disk, offset); in bcache_dev_stripe_dirty()
88 if (atomic_read(dc->disk.stripe_sectors_dirty + stripe)) in bcache_dev_stripe_dirty()
91 if (nr_sectors <= dc->disk.stripe_size) in bcache_dev_stripe_dirty()
94 nr_sectors -= dc->disk.stripe_size; in bcache_dev_stripe_dirty()
105 unsigned int in_use = dc->disk.c->gc_stats.in_use; in should_writeback()
108 test_bit(BCACHE_DEV_DETACHING, &dc->disk.flags) || in should_writeback()

12345678910>>...15