Chapter 14. Block Devices

Table of Contents

blk_get_backing_dev_info — get the address of a queue's backing_dev_info
blk_delay_queue — restart queueing after defined interval
blk_start_queue — restart a previously stopped queue
blk_stop_queue — stop a queue
blk_sync_queue — cancel any pending callbacks on a queue
__blk_run_queue — run a single device queue
blk_run_queue_async — run a single device queue in workqueue context
blk_run_queue — run a single device queue
blk_init_queue — prepare a request queue for use with a block device
blk_make_request — given a bio, allocate a corresponding struct request.
blk_requeue_request — put a request back on queue
blk_insert_request — insert a special request into a request queue
part_round_stats — Round off the performance stats on a struct disk_stats.
blk_add_request_payload — add a payload to a request
submit_bio — submit a bio to the block device layer for I/O
blk_rq_check_limits — Helper function to check a request for the queue limit
blk_insert_cloned_request — Helper for stacking drivers to submit a request
blk_rq_err_bytes — determine number of bytes till the next failure boundary
blk_peek_request — peek at the top of a request queue
blk_start_request — start request processing on the driver
blk_fetch_request — fetch a request from a request queue
blk_update_request — Special helper function for request stacking drivers
blk_unprep_request — unprepare a request
blk_end_request — Helper function for drivers to complete the request.
blk_end_request_all — Helper function for drives to finish the request.
blk_end_request_cur — Helper function to finish the current request chunk.
blk_end_request_err — Finish a request till the next failure boundary.
__blk_end_request — Helper function for drivers to complete the request.
__blk_end_request_all — Helper function for drives to finish the request.
__blk_end_request_cur — Helper function to finish the current request chunk.
__blk_end_request_err — Finish a request till the next failure boundary.
rq_flush_dcache_pages — Helper function to flush all pages in a request
blk_lld_busy — Check if underlying low-level drivers of a device are busy
blk_rq_unprep_clone — Helper function to free all bios in a cloned request
blk_rq_prep_clone — Helper function to setup clone request
__generic_make_request — hand a buffer to its device driver for I/O
blk_end_bidi_request — Complete a bidi request
__blk_end_bidi_request — Complete a bidi request with queue lock held
blk_rq_map_user — map user data to a request, for REQ_TYPE_BLOCK_PC usage
blk_rq_map_user_iov — map user data to a request, for REQ_TYPE_BLOCK_PC usage
blk_rq_unmap_user — unmap a request with user data
blk_rq_map_kern — map kernel data to a request, for REQ_TYPE_BLOCK_PC usage
blk_release_queue — release a struct request_queue when it is no longer needed
blk_queue_prep_rq — set a prepare_request function for queue
blk_queue_unprep_rq — set an unprepare_request function for queue
blk_queue_merge_bvec — set a merge_bvec function for queue
blk_set_default_limits — reset limits to default values
blk_queue_make_request — define an alternate make_request function for a device
blk_queue_bounce_limit — set bounce buffer limit for queue
blk_limits_max_hw_sectors — set hard and soft limit of max sectors for request
blk_queue_max_hw_sectors — set max sectors for a request for this queue
blk_queue_max_discard_sectors — set max sectors for a single discard
blk_queue_max_segments — set max hw segments for a request for this queue
blk_queue_max_segment_size — set max segment size for blk_rq_map_sg
blk_queue_logical_block_size — set logical block size for the queue
blk_queue_physical_block_size — set physical block size for the queue
blk_queue_alignment_offset — set physical block alignment offset
blk_limits_io_min — set minimum request size for a device
blk_queue_io_min — set minimum request size for the queue
blk_limits_io_opt — set optimal request size for a device
blk_queue_io_opt — set optimal request size for the queue
blk_queue_stack_limits — inherit underlying queue limits for stacked drivers
blk_stack_limits — adjust queue_limits for stacked devices
bdev_stack_limits — adjust queue limits for stacked drivers
disk_stack_limits — adjust queue limits for stacked drivers
blk_queue_dma_pad — set pad mask
blk_queue_update_dma_pad — update pad mask
blk_queue_dma_drain — Set up a drain buffer for excess dma.
blk_queue_segment_boundary — set boundary rules for segment merging
blk_queue_dma_alignment — set dma length and memory alignment
blk_queue_update_dma_alignment — update dma length and memory alignment
blk_queue_flush — configure queue's cache flush capability
blk_execute_rq_nowait — insert a request into queue for execution
blk_execute_rq — insert a request into queue for execution
blkdev_issue_flush — queue a flush
blkdev_issue_discard — queue a discard
blkdev_issue_zeroout — generate number of zero filed write bios
blk_queue_find_tag — find a request by its tag and queue
blk_free_tags — release a given set of tag maintenance info
blk_queue_free_tags — release tag maintenance info
blk_init_tags — initialize the tag info for an external tag map
blk_queue_init_tags — initialize the queue tag info
blk_queue_resize_tags — change the queueing depth
blk_queue_end_tag — end tag operations for a request
blk_queue_start_tag — find a free tag and assign it
blk_queue_invalidate_tags — invalidate all pending tags
__blk_free_tags — release a given set of tag maintenance info
__blk_queue_free_tags — release tag maintenance info
blk_rq_count_integrity_sg — Count number of integrity scatterlist elements
blk_rq_map_integrity_sg — Map integrity metadata into a scatterlist
blk_integrity_compare — Compare integrity profile of two disks
blk_integrity_register — Register a gendisk as being integrity-capable
blk_integrity_unregister — Remove block integrity profile
blk_trace_ioctl — handle the ioctls associated with tracing
blk_trace_shutdown — stop and cleanup trace structures
blk_add_trace_rq — Add a trace for a request oriented action
blk_add_trace_bio — Add a trace for a bio oriented action
blk_add_trace_bio_remap — Add a trace for a bio-remap operation
blk_add_trace_rq_remap — Add a trace for a request-remap operation
blk_mangle_minor — scatter minor numbers apart
blk_alloc_devt — allocate a dev_t for a partition
blk_free_devt — free a dev_t
disk_replace_part_tbl — replace disk->part_tbl in RCU-safe way
disk_expand_part_tbl — expand disk->part_tbl
disk_block_events — block and flush disk event checking
disk_unblock_events — unblock disk event checking
disk_clear_events — synchronously check, clear and return pending events
disk_get_part — get partition
disk_part_iter_init — initialize partition iterator
disk_part_iter_next — proceed iterator to the next partition and return it
disk_part_iter_exit — finish up partition iteration
disk_map_sector_rcu — map sector to partition
register_blkdev — register a new block device
add_disk — add partitioning information to kernel list
get_gendisk — get partitioning information for a given device
bdget_disk — do bdget by gendisk and partition number
disk_check_events — schedule immediate event checking