/linux-master/block/ |
H A D | blk-rq-qos.h | 38 void (*throttle)(struct rq_qos *, struct bio *); 39 void (*track)(struct rq_qos *, struct request *, struct bio *); 40 void (*merge)(struct rq_qos *, struct request *, struct bio *); 44 void (*done_bio)(struct rq_qos *, struct bio *); 45 void (*cleanup)(struct rq_qos *, struct bio *); 103 void __rq_qos_cleanup(struct rq_qos *rqos, struct bio *bio); 107 void __rq_qos_throttle(struct rq_qos *rqos, struct bio *bio); 108 void __rq_qos_track(struct rq_qos *rqos, struct request *rq, struct bio *bi 113 rq_qos_cleanup(struct request_queue *q, struct bio *bio) argument 137 rq_qos_done_bio(struct bio *bio) argument 147 rq_qos_throttle(struct request_queue *q, struct bio *bio) argument 155 rq_qos_track(struct request_queue *q, struct request *rq, struct bio *bio) argument 162 rq_qos_merge(struct request_queue *q, struct request *rq, struct bio *bio) argument [all...] |
H A D | bio-integrity.c | 3 * bio-integrity.c - bio data integrity extensions 12 #include <linux/bio.h> 39 * bio_integrity_alloc - Allocate integrity payload and attach it to bio 40 * @bio: bio to attach integrity metadata to 44 * Description: This function prepares a bio for attaching integrity 48 struct bio_integrity_payload *bio_integrity_alloc(struct bio *bio, argument 53 struct bio_set *bs = bio 142 bio_integrity_free(struct bio *bio) argument 165 bio_integrity_unmap_free_user(struct bio *bio) argument 188 bio_integrity_add_page(struct bio *bio, struct page *page, unsigned int len, unsigned int offset) argument 228 bio_integrity_copy_user(struct bio *bio, struct bio_vec *bvec, int nr_vecs, unsigned int len, unsigned int direction, u32 seed) argument 287 bio_integrity_init_user(struct bio *bio, struct bio_vec *bvec, int nr_vecs, unsigned int len, u32 seed) argument 333 bio_integrity_map_user(struct bio *bio, void __user *ubuf, ssize_t bytes, u32 seed) argument 405 bio_integrity_process(struct bio *bio, struct bvec_iter *proc_iter, integrity_processing_fn *proc_fn) argument 449 bio_integrity_prep(struct bio *bio) argument 554 struct bio *bio = bip->bip_bio; local 579 __bio_integrity_endio(struct bio *bio) argument 604 bio_integrity_advance(struct bio *bio, unsigned int bytes_done) argument 620 bio_integrity_trim(struct bio *bio) argument 637 bio_integrity_clone(struct bio *bio, struct bio *bio_src, gfp_t gfp_mask) argument [all...] |
H A D | blk-core.c | 9 * bio rewrite, highmem i/o, etc, Jens Axboe <axboe@suse.de> - may 2001 17 #include <linux/bio.h> 135 * string format. Useful in the debugging and tracing bio or request. For 339 int __bio_queue_enter(struct request_queue *q, struct bio *bio) argument 342 struct gendisk *disk = bio->bi_bdev->bd_disk; 344 if (bio->bi_opf & REQ_NOWAIT) { 347 bio_wouldblock_error(bio); 369 bio_io_error(bio); 514 static inline void bio_check_ro(struct bio *bi argument 534 should_fail_bio(struct bio *bio) argument 547 bio_check_eod(struct bio *bio) argument 567 blk_partition_remap(struct bio *bio) argument 586 blk_check_zone_append(struct request_queue *q, struct bio *bio) argument 616 __submit_bio(struct bio *bio) argument 657 __submit_bio_noacct(struct bio *bio) argument 701 __submit_bio_noacct_mq(struct bio *bio) argument 714 submit_bio_noacct_nocheck(struct bio *bio) argument 751 submit_bio_noacct(struct bio *bio) argument 859 bio_set_ioprio(struct bio *bio) argument 880 submit_bio(struct bio *bio) argument 906 bio_poll(struct bio *bio, struct io_comp_batch *iob, unsigned int flags) argument 955 struct bio *bio; local 1022 bio_start_io_acct(struct bio *bio) argument 1045 bio_end_io_acct_remapped(struct bio *bio, unsigned long start_time, struct block_device *orig_bdev) argument [all...] |
H A D | blk-crypto.c | 12 #include <linux/bio.h> 50 * concurrently) * (maximum recursive depth of a bio), so that we don't 58 "Number of bio crypto contexts to preallocate"); 87 panic("Failed to allocate mem for bio crypt ctxs\n"); 91 void bio_crypt_set_ctx(struct bio *bio, const struct blk_crypto_key *key, argument 107 bio->bi_crypt_context = bc; 110 void __bio_crypt_free_ctx(struct bio *bio) argument 112 mempool_free(bio 144 __bio_crypt_advance(struct bio *bio, unsigned int bytes) argument 193 bio_crypt_rq_ctx_compatible(struct request *rq, struct bio *bio) argument 213 bio_crypt_check_alignment(struct bio *bio) argument 275 struct bio *bio = *bio_ptr; local 303 __blk_crypto_rq_bio_prep(struct request *rq, struct bio *bio, gfp_t gfp_mask) argument [all...] |
H A D | blk-cgroup-fc-appid.c | 46 * blkcg_get_fc_appid - get the fc app identifier associated with a bio 47 * @bio: target bio 51 char *blkcg_get_fc_appid(struct bio *bio) argument 53 if (!bio->bi_blkg || bio->bi_blkg->blkcg->fc_app_id[0] == '\0') 55 return bio->bi_blkg->blkcg->fc_app_id;
|
H A D | blk-mq-sched.h | 10 bool blk_mq_sched_try_merge(struct request_queue *q, struct bio *bio, 12 bool blk_mq_sched_bio_merge(struct request_queue *q, struct bio *bio, 31 static inline bool bio_mergeable(struct bio *bio) argument 33 return !(bio->bi_opf & REQ_NOMERGE_FLAGS); 38 struct bio *bio) 44 return e->type->ops.allow_merge(q, rq, bio); 37 blk_mq_sched_allow_merge(struct request_queue *q, struct request *rq, struct bio *bio) argument [all...] |
H A D | blk-crypto-fallback.c | 38 "Number of preallocated bio fallback crypto contexts for blk-crypto to use during crypto API fallback"); 43 * Copy of the bvec_iter when this bio was submitted. 44 * We only want to en/decrypt the part of the bio as described by the 45 * bvec_iter upon submission because bio might be split before being 52 struct bio *bio; member in struct:bio_fallback_crypt_ctx::__anon291::__anon292 144 static void blk_crypto_fallback_encrypt_endio(struct bio *enc_bio) 146 struct bio *src_bio = enc_bio->bi_private; 160 static struct bio *blk_crypto_fallback_clone_bio(struct bio *bio_sr 165 struct bio *bio; local 213 struct bio *bio = *bio_ptr; local 381 struct bio *bio = f_ctx->bio; local 452 blk_crypto_fallback_decrypt_endio(struct bio *bio) argument 493 struct bio *bio = *bio_ptr; local [all...] |
H A D | blk-zoned.c | 82 * being executed or the zone write plug bio list is not empty. 203 struct bio *bio = NULL; local 223 bio = blk_next_bio(bio, bdev, 0, REQ_OP_ZONE_RESET | REQ_SYNC, 225 bio->bi_iter.bi_sector = sector; 232 if (bio) { 233 ret = submit_bio_wait(bio); 234 bio_put(bio); 244 struct bio bi local 272 struct bio *bio = NULL; local 656 blk_zone_wplug_bio_io_error(struct blk_zone_wplug *zwplug, struct bio *bio) argument 672 struct bio *bio; local 688 struct bio *bio; local 799 blk_zone_wplug_handle_reset_or_finish(struct bio *bio, unsigned int wp_offset) argument 828 blk_zone_wplug_handle_reset_all(struct bio *bio) argument 851 blk_zone_wplug_add_bio(struct blk_zone_wplug *zwplug, struct bio *bio, unsigned int nr_segs) argument 887 blk_zone_write_plug_bio_merged(struct bio *bio) argument 933 struct bio *bio; local 989 blk_zone_wplug_prepare_bio(struct blk_zone_wplug *zwplug, struct bio *bio) argument 1039 blk_zone_wplug_handle_write(struct bio *bio, unsigned int nr_segs) argument 1123 blk_zone_plug_bio(struct bio *bio, unsigned int nr_segs) argument 1237 blk_zone_write_plug_bio_endio(struct bio *bio) argument 1313 struct bio *bio; local [all...] |
/linux-master/fs/crypto/ |
H A D | bio.c | 12 #include <linux/bio.h> 17 * fscrypt_decrypt_bio() - decrypt the contents of a bio 18 * @bio: the bio to decrypt 20 * Decrypt the contents of a "read" bio following successful completion of the 21 * underlying disk read. The bio must be reading a whole number of blocks of an 22 * encrypted file directly into the page cache. If the bio is reading the 26 * called from a workqueue rather than from the bio's bi_end_io callback. 28 * Return: %true on success; %false on failure. On failure, bio->bi_status is 31 bool fscrypt_decrypt_bio(struct bio *bi argument 54 struct bio *bio; local 126 struct bio *bio; local [all...] |
/linux-master/drivers/md/dm-vdo/ |
H A D | vio.c | 8 #include <linux/bio.h> 41 physical_block_number_t pbn_from_vio_bio(struct bio *bio) argument 43 struct vio *vio = bio->bi_private; 45 physical_block_number_t pbn = bio->bi_iter.bi_sector / VDO_SECTORS_PER_BLOCK; 50 static int create_multi_block_bio(block_count_t size, struct bio **bio_ptr) 52 struct bio *bio = NULL; local 55 result = vdo_allocate_extended(struct bio, size + 1, struct bio_vec, 56 "bio", 69 vdo_free_bio(struct bio *bio) argument 82 struct bio *bio; local 173 vdo_set_bio_properties(struct bio *bio, struct vio *vio, bio_end_io_t callback, blk_opf_t bi_opf, physical_block_number_t pbn) argument 198 struct bio *bio = vio->bio; local 445 vdo_count_bios(struct atomic_bio_stats *bio_stats, struct bio *bio) argument 478 count_all_bios_completed(struct vio *vio, struct bio *bio) argument 494 vdo_count_completed_bios(struct bio *bio) argument [all...] |
H A D | io-submitter.c | 8 #include <linux/bio.h> 22 * Submission of bio operations to the underlying storage device will go through a separate work 70 * count_all_bios() - Determine which bio counter to use. 71 * @vio: The vio associated with the bio. 72 * @bio: The bio to count. 74 static void count_all_bios(struct vio *vio, struct bio *bio) argument 79 vdo_count_bios(&stats->bios_out, bio); 83 vdo_count_bios(&stats->bios_meta, bio); 107 send_bio_to_device(struct vio *vio, struct bio *bio) argument 140 struct bio *bio; local 166 struct bio *bio, *next; local 192 struct bio *bio = vio->bio; local 271 struct bio *bio = vio->bio; local [all...] |
H A D | vio.h | 9 #include <linux/bio.h> 48 * get_vio_bio_zone_thread_id() - Get the thread id of the bio zone in which a vio should submit 52 * Return: The id of the bio zone thread the vio should use. 59 physical_block_number_t __must_check pbn_from_vio_bio(struct bio *bio); 62 * assert_vio_in_bio_zone() - Check that a vio is running on the correct thread for its bio zone. 71 "vio I/O for physical block %llu on thread %u, should be on bio zone thread %u", 72 (unsigned long long) pbn_from_vio_bio(vio->bio), thread_id, 76 int vdo_create_bio(struct bio **bio_ptr); 77 void vdo_free_bio(struct bio *bi 107 initialize_vio(struct vio *vio, struct bio *bio, unsigned int block_count, enum vio_type vio_type, enum vio_priority priority, struct vdo *vdo) argument [all...] |
/linux-master/fs/bcachefs/ |
H A D | super_types.h | 10 struct bio *bio; member in struct:bch_sb_handle
|
/linux-master/drivers/nvme/target/ |
H A D | io-cmd-bdev.c | 181 static void nvmet_bio_done(struct bio *bio) argument 183 struct nvmet_req *req = bio->bi_private; 185 nvmet_req_complete(req, blk_to_nvme_status(req, bio->bi_status)); 186 nvmet_req_bio_put(req, bio); 190 static int nvmet_bdev_alloc_bip(struct nvmet_req *req, struct bio *bio, argument 204 bip = bio_integrity_alloc(bio, GFP_NOIO, 212 bip_set_seed(bip, bio->bi_iter.bi_sector >> 215 resid = bio_integrity_bytes(bi, bio_sectors(bio)); 235 nvmet_bdev_alloc_bip(struct nvmet_req *req, struct bio *bio, struct sg_mapping_iter *miter) argument 245 struct bio *bio; local 335 struct bio *bio = &req->b.inline_bio; local 363 nvmet_bdev_discard_range(struct nvmet_req *req, struct nvme_dsm_range *range, struct bio **bio) argument 383 struct bio *bio = NULL; local 431 struct bio *bio = NULL; local [all...] |
/linux-master/fs/ |
H A D | mpage.c | 13 * use bio_add_page() to build bio's just the right size 21 #include <linux/bio.h> 46 static void mpage_read_end_io(struct bio *bio) argument 49 int err = blk_status_to_errno(bio->bi_status); 51 bio_for_each_folio_all(fi, bio) { 59 bio_put(bio); 62 static void mpage_write_end_io(struct bio *bio) argument 65 int err = blk_status_to_errno(bio 78 mpage_bio_submit_read(struct bio *bio) argument 86 mpage_bio_submit_write(struct bio *bio) argument 139 struct bio *bio; member in struct:mpage_readpage_args 424 struct bio *bio; member in struct:mpage_data 462 struct bio *bio = mpd->bio; local [all...] |
/linux-master/drivers/md/ |
H A D | dm-ebs-target.c | 47 /* Return number of blocks for a bio, accounting for misalignment of start and end sectors. */ 48 static inline unsigned int __nr_blocks(struct ebs_c *ec, struct bio *bio) argument 50 sector_t end_sector = __block_mod(bio->bi_iter.bi_sector, ec->u_bs) + bio_sectors(bio); 63 * copy blocks between bufio blocks and bio vector's (partial/overlapping) pages. 85 /* Avoid reading for writes in case bio vector's page overwrites block completely. */ 98 /* Copy data to/from bio to buffer if read/new was successful above. */ 121 /* READ/WRITE: iterate bio vector's copying between (partial) pages and bufio blocks. */ 122 static int __ebs_rw_bio(struct ebs_c *ec, enum req_op op, struct bio *bi argument 143 __ebs_discard_bio(struct ebs_c *ec, struct bio *bio) argument 167 __ebs_forget_bio(struct ebs_c *ec, struct bio *bio) argument 183 struct bio *bio; local 361 ebs_map(struct dm_target *ti, struct bio *bio) argument [all...] |
H A D | dm-rq.h | 13 #include <linux/bio.h> 21 * For request-based dm - the bio clones we allocate are embedded in these 25 * the bioset is created - this means the bio has to come at the end of the 29 struct bio *orig; 31 struct bio clone;
|
H A D | raid1-10.c | 13 * correct the read error. To keep track of bad blocks on a per-bio 16 #define IO_BLOCKED ((struct bio *)1) 19 * the success by setting devs[n].bio to IO_MADE_GOOD 21 #define IO_MADE_GOOD ((struct bio *)2) 23 #define BIO_SPECIAL(bio) ((unsigned long)bio <= 2) 88 * IO, and it is per-bio, so make .bi_private points to it. 90 static inline struct resync_pages *get_resync_pages(struct bio *bio) argument 92 return bio 96 md_bio_reset_resync_pages(struct bio *bio, struct resync_pages *rp, int size) argument 117 raid1_submit_write(struct bio *bio) argument 133 raid1_add_bio_to_plug(struct mddev *mddev, struct bio *bio, blk_plug_cb_fn unplug, int copies) argument [all...] |
H A D | dm-flakey.c | 14 #include <linux/bio.h> 21 #define all_corrupt_bio_flags_match(bio, fc) \ 22 (((bio)->bi_opf & (fc)->corrupt_bio_flags) == (fc)->corrupt_bio_flags) 62 {1, UINT_MAX, "Invalid corrupt bio byte"}, 63 {0, 255, "Invalid corrupt value to write into bio byte (0-255)"}, 64 {0, UINT_MAX, "Invalid corrupt bio flags mask"}, 150 ti->error = "Invalid corrupt bio direction (r or w)"; 333 static void flakey_map_bio(struct dm_target *ti, struct bio *bio) argument 337 bio_set_dev(bio, f 341 corrupt_bio_common(struct bio *bio, unsigned int corrupt_bio_byte, unsigned char corrupt_bio_value) argument 368 corrupt_bio_data(struct bio *bio, struct flakey_c *fc) argument 378 corrupt_bio_random(struct bio *bio) argument 407 struct bio *bio = clone->bi_private; local 413 clone_bio(struct dm_target *ti, struct flakey_c *fc, struct bio *bio) argument 478 flakey_map(struct dm_target *ti, struct bio *bio) argument 553 flakey_end_io(struct dm_target *ti, struct bio *bio, blk_status_t *error) argument [all...] |
H A D | dm-audit.h | 18 struct bio *bio, sector_t sector, int result); 46 struct bio *bio, sector_t sector, 45 dm_audit_log_bio(const char *dm_msg_prefix, const char *op, struct bio *bio, sector_t sector, int result) argument
|
H A D | dm-raid1.c | 9 #include "dm-bio-record.h" 126 static void queue_bio(struct mirror_set *ms, struct bio *bio, int rw) argument 135 bio_list_add(bl, bio); 145 struct bio *bio; local 147 while ((bio = bio_list_pop(bio_list))) 148 queue_bio(ms, bio, WRITE); 168 static struct mirror *bio_get_m(struct bio *bio) argument 173 bio_set_m(struct bio *bio, struct mirror *m) argument 445 mirror_available(struct mirror_set *ms, struct bio *bio) argument 459 map_sector(struct mirror *m, struct bio *bio) argument 466 map_bio(struct mirror *m, struct bio *bio) argument 472 map_region(struct dm_io_region *io, struct mirror *m, struct bio *bio) argument 480 hold_bio(struct mirror_set *ms, struct bio *bio) argument 517 struct bio *bio = context; local 543 read_async_bio(struct mirror *m, struct bio *bio) argument 570 struct bio *bio; local 607 struct bio *bio = context; local 654 do_write(struct mirror_set *ms, struct bio *bio) argument 690 struct bio *bio; local 789 map_bio(get_default_mirror(ms), bio); local 797 struct bio *bio; local 1196 mirror_map(struct dm_target *ti, struct bio *bio) argument 1245 mirror_end_io(struct dm_target *ti, struct bio *bio, blk_status_t *error) argument 1318 struct bio *bio; local [all...] |
H A D | dm-zoned-target.c | 22 struct bio *bio; member in struct:dmz_bioctx 75 static inline void dmz_bio_endio(struct bio *bio, blk_status_t status) argument 78 dm_per_bio_data(bio, sizeof(struct dmz_bioctx)); 80 if (status != BLK_STS_OK && bio->bi_status == BLK_STS_OK) 81 bio->bi_status = status; 82 if (bioctx->dev && bio->bi_status != BLK_STS_OK) 89 if (bio->bi_status != BLK_STS_OK && 90 bio_op(bio) 116 dmz_submit_bio(struct dmz_target *dmz, struct dm_zone *zone, struct bio *bio, sector_t chunk_block, unsigned int nr_blocks) argument 153 dmz_handle_read_zero(struct dmz_target *dmz, struct bio *bio, sector_t chunk_block, unsigned int nr_blocks) argument 169 dmz_handle_read(struct dmz_target *dmz, struct dm_zone *zone, struct bio *bio) argument 249 dmz_handle_direct_write(struct dmz_target *dmz, struct dm_zone *zone, struct bio *bio, sector_t chunk_block, unsigned int nr_blocks) argument 282 dmz_handle_buffered_write(struct dmz_target *dmz, struct dm_zone *zone, struct bio *bio, sector_t chunk_block, unsigned int nr_blocks) argument 318 dmz_handle_write(struct dmz_target *dmz, struct dm_zone *zone, struct bio *bio) argument 357 dmz_handle_discard(struct dmz_target *dmz, struct dm_zone *zone, struct bio *bio) argument 395 dmz_handle_bio(struct dmz_target *dmz, struct dm_chunk_work *cw, struct bio *bio) argument 482 struct bio *bio; local 506 struct bio *bio; local 534 dmz_queue_chunk_work(struct dmz_target *dmz, struct bio *bio) argument 625 dmz_map(struct dm_target *ti, struct bio *bio) argument [all...] |
/linux-master/fs/btrfs/ |
H A D | bio.h | 11 #include <linux/bio.h> 22 * Maximum number of sectors for a single bio to limit the size of the 23 * checksum array. This matches the number of bio_vecs per bio and thus the 55 * - ordered extent covering the bio 56 * - pointer to the checksums for this bio 84 * bytes for entire btrfs_bio but relies on bio being last. 86 struct bio bio; member in struct:btrfs_bio 89 static inline struct btrfs_bio *btrfs_bio(struct bio *bio) argument [all...] |
/linux-master/include/trace/events/ |
H A D | block.h | 145 * the @rq->bio is %NULL, then there is absolutely no additional work to 146 * do for the request. If @rq->bio is non-NULL then there is 279 * @bio: block operation completed 282 * block IO operation @bio. 286 TP_PROTO(struct request_queue *q, struct bio *bio), 288 TP_ARGS(q, bio), 299 __entry->dev = bio_dev(bio); 300 __entry->sector = bio->bi_iter.bi_sector; 301 __entry->nr_sector = bio_sectors(bio); [all...] |
/linux-master/mm/ |
H A D | page_io.c | 19 #include <linux/bio.h> 30 static void __end_swap_bio_write(struct bio *bio) argument 32 struct folio *folio = bio_first_folio_all(bio); 34 if (bio->bi_status) { 45 MAJOR(bio_dev(bio)), MINOR(bio_dev(bio)), 46 (unsigned long long)bio->bi_iter.bi_sector); 52 static void end_swap_bio_write(struct bio *bio) argument 58 __end_swap_bio_read(struct bio *bio) argument 72 end_swap_bio_read(struct bio *bio) argument 226 bio_associate_blkg_from_page(struct bio *bio, struct folio *folio) argument 339 struct bio bio; local 359 struct bio *bio; local 467 struct bio bio; local 486 struct bio *bio; local [all...] |