/kernel/linux/linux-6.6/drivers/md/ |
H A D | dm-core.h | 28 struct dm_io; 101 * to represent the dm_io to be requeued, since each 102 * dm_io may point to the original bio from FS. 105 struct dm_io *requeue_list; 247 struct dm_io *io; 255 (offsetof(struct dm_target_io, clone) + offsetof(struct dm_io, tio)) 286 struct dm_io { struct 292 struct dm_io *next; 308 * dm_io flags 316 static inline bool dm_io_flagged(struct dm_io *i [all...] |
H A D | dm.c | 46 * dm_io into one list, and reuse bio->bi_private as the list head. Before 85 struct dm_io *io; 107 struct dm_io *io = (struct dm_io *)((char *)data + data_size); in dm_bio_from_per_bio_data() 495 static inline unsigned int dm_io_sectors(struct dm_io *io, struct bio *bio) in dm_io_sectors() 508 static void dm_io_acct(struct dm_io *io, bool end) in dm_io_acct() 537 static void __dm_start_io_acct(struct dm_io *io) in __dm_start_io_acct() 542 static void dm_start_io_acct(struct dm_io *io, struct bio *clone) in dm_start_io_acct() 568 static void dm_end_io_acct(struct dm_io *io) in dm_end_io_acct() 573 static struct dm_io *alloc_i [all...] |
H A D | dm.h | 50 struct dm_io; 105 void dm_zone_endio(struct dm_io *io, struct bio *clone);
|
H A D | dm-writecache.c | 191 struct dm_io_client *dm_io; member 529 req.client = wc->dm_io; in ssd_commit_flushed() 534 (void) dm_io(&req, 1, ®ion, NULL, IOPRIO_DEFAULT); in ssd_commit_flushed() 567 req.client = wc->dm_io; in ssd_commit_superblock() 571 r = dm_io(&req, 1, ®ion, NULL, IOPRIO_DEFAULT); in ssd_commit_superblock() 596 req.client = wc->dm_io; in writecache_disk_flush() 599 r = dm_io(&req, 1, ®ion, NULL, IOPRIO_DEFAULT); in writecache_disk_flush() 990 req.client = wc->dm_io; in writecache_read_metadata() 993 return dm_io(&req, 1, ®ion, NULL, IOPRIO_DEFAULT); in writecache_read_metadata() 2221 if (wc->dm_io) in writecache_dtr() [all...] |
H A D | dm-bufio.c | 995 struct dm_io_client *dm_io; member 1302 .client = b->c->dm_io, in use_dmio() 1318 r = dm_io(&io_req, 1, ®ion, NULL, IOPRIO_DEFAULT); in use_dmio() 2159 .client = c->dm_io, in dm_bufio_issue_flush() 2170 return dm_io(&io_req, 1, &io_reg, NULL, IOPRIO_DEFAULT); in dm_bufio_issue_flush() 2183 .client = c->dm_io, in dm_bufio_issue_discard() 2194 return dm_io(&io_req, 1, &io_reg, NULL, IOPRIO_DEFAULT); in dm_bufio_issue_discard() 2274 return c->dm_io; in dm_bufio_get_dm_io_client() 2488 c->dm_io = dm_io_client_create(); in dm_bufio_client_create() 2489 if (IS_ERR(c->dm_io)) { in dm_bufio_client_create() [all...] |
H A D | dm-io-rewind.c | 143 void dm_io_rewind(struct dm_io *io, struct bio_set *bs) in dm_io_rewind()
|
H A D | dm-io.c | 525 int dm_io(struct dm_io_request *io_req, unsigned int num_regions, in dm_io() function 544 EXPORT_SYMBOL(dm_io); variable
|
H A D | dm-zone.c | 514 struct dm_io *io = tio->io; in dm_zone_map_bio() 585 void dm_zone_endio(struct dm_io *io, struct bio *clone) in dm_zone_endio()
|
H A D | dm-snap-persistent.c | 226 req->result = dm_io(req->io_req, 1, req->where, NULL, IOPRIO_DEFAULT); in do_metadata() 250 return dm_io(&io_req, 1, &where, NULL, IOPRIO_DEFAULT); in chunk_io()
|
H A D | dm-log.c | 303 return dm_io(&lc->io_req, 1, &lc->header_location, NULL, IOPRIO_DEFAULT); in rw_header() 316 return dm_io(&lc->io_req, 1, &null_location, NULL, IOPRIO_DEFAULT); in flush_header()
|
H A D | dm-raid1.c | 281 dm_io(&io_req, ms->nr_mirrors, io, &error_bits, IOPRIO_DEFAULT); in mirror_flush() 557 BUG_ON(dm_io(&io_req, 1, &io, NULL, IOPRIO_DEFAULT)); in read_async_bio() 684 BUG_ON(dm_io(&io_req, ms->nr_mirrors, io, NULL, IOPRIO_DEFAULT)); in do_write() 918 ti->error = "Error creating dm_io client"; in alloc_context()
|
H A D | dm-kcopyd.c | 581 r = dm_io(&io_req, 1, &job->source, NULL, IOPRIO_DEFAULT); in run_io_job() 583 r = dm_io(&io_req, job->num_dests, job->dests, NULL, IOPRIO_DEFAULT); in run_io_job()
|
H A D | dm-integrity.c | 568 r = dm_io(&io_req, 1, &io_loc, NULL, IOPRIO_DEFAULT); in sync_rw_sb() 1086 r = dm_io(&io_req, 1, &io_loc, NULL, IOPRIO_DEFAULT); in rw_journal_sectors() 1091 WARN_ONCE(1, "asynchronous dm_io failed: %d", r); in rw_journal_sectors() 1203 r = dm_io(&io_req, 1, &io_loc, NULL, IOPRIO_DEFAULT); in copy_from_journal() 1205 WARN_ONCE(1, "asynchronous dm_io failed: %d", r); in copy_from_journal() 1532 r = dm_io(&fr.io_req, 1, &fr.io_reg, NULL, IOPRIO_DEFAULT); in dm_integrity_flush_buffers() 1748 r = dm_io(&io_req, 1, &io_loc, NULL, IOPRIO_DEFAULT); in integrity_recheck() 2827 r = dm_io(&io_req, 1, &io_loc, NULL, IOPRIO_DEFAULT); in integrity_recalc()
|
H A D | dm-verity-target.c | 514 r = dm_io(&io_req, 1, &io_loc, NULL, IOPRIO_DEFAULT); in verity_recheck()
|
/kernel/linux/linux-5.10/drivers/md/ |
H A D | dm.c | 71 struct dm_io *io; 82 struct dm_io *io; 95 struct dm_io { struct 113 return (char *)bio - offsetof(struct dm_target_io, clone) - offsetof(struct dm_io, tio) - data_size; in dm_per_bio_data() 119 struct dm_io *io = (struct dm_io *)((char *)data + data_size); in dm_bio_from_per_bio_data() 121 return (struct bio *)((char *)io + offsetof(struct dm_io, tio) + offsetof(struct dm_target_io, clone)); in dm_bio_from_per_bio_data() 591 struct dm_io *io = tio->io; in dm_start_time_ns_from_clone() 597 static void start_io_acct(struct dm_io *io) in start_io_acct() 628 static struct dm_io *alloc_i [all...] |
H A D | dm-bufio.c | 96 struct dm_io_client *dm_io; member 589 .client = b->c->dm_io, in use_dmio() 605 r = dm_io(&io_req, 1, ®ion, NULL); in use_dmio() 1349 .client = c->dm_io, in dm_bufio_issue_flush() 1359 return dm_io(&io_req, 1, &io_reg, NULL); in dm_bufio_issue_flush() 1373 .client = c->dm_io, in dm_bufio_issue_discard() 1383 return dm_io(&io_req, 1, &io_reg, NULL); in dm_bufio_issue_discard() 1543 return c->dm_io; in dm_bufio_get_dm_io_client() 1765 c->dm_io = dm_io_client_create(); in dm_bufio_client_create() 1766 if (IS_ERR(c->dm_io)) { in dm_bufio_client_create() [all...] |
H A D | dm-writecache.c | 185 struct dm_io_client *dm_io; member 507 req.client = wc->dm_io; in ssd_commit_flushed() 512 (void) dm_io(&req, 1, ®ion, NULL); in ssd_commit_flushed() 546 req.client = wc->dm_io; in ssd_commit_superblock() 550 r = dm_io(&req, 1, ®ion, NULL); in ssd_commit_superblock() 576 req.client = wc->dm_io; in writecache_disk_flush() 579 r = dm_io(&req, 1, ®ion, NULL); in writecache_disk_flush() 965 req.client = wc->dm_io; in writecache_read_metadata() 968 return dm_io(&req, 1, ®ion, NULL); in writecache_read_metadata() 2072 if (wc->dm_io) in writecache_dtr() [all...] |
H A D | dm-io.c | 537 int dm_io(struct dm_io_request *io_req, unsigned num_regions, in dm_io() function 556 EXPORT_SYMBOL(dm_io); variable
|
H A D | dm-log.c | 299 return dm_io(&lc->io_req, 1, &lc->header_location, NULL); in rw_header() 313 return dm_io(&lc->io_req, 1, &null_location, NULL); in flush_header()
|
H A D | dm-snap-persistent.c | 223 req->result = dm_io(req->io_req, 1, req->where, NULL); in do_metadata() 248 return dm_io(&io_req, 1, &where, NULL); in chunk_io()
|
H A D | dm-raid1.c | 277 dm_io(&io_req, ms->nr_mirrors, io, &error_bits); in mirror_flush() 549 BUG_ON(dm_io(&io_req, 1, &io, NULL)); in read_async_bio() 676 BUG_ON(dm_io(&io_req, ms->nr_mirrors, io, NULL)); in do_write() 906 ti->error = "Error creating dm_io client"; in alloc_context()
|
H A D | dm-kcopyd.c | 577 r = dm_io(&io_req, 1, &job->source, NULL); in run_io_job() 579 r = dm_io(&io_req, job->num_dests, job->dests, NULL); in run_io_job()
|
H A D | dm-integrity.c | 509 return dm_io(&io_req, 1, &io_loc, NULL); in sync_rw_sb() 988 r = dm_io(&io_req, 1, &io_loc, NULL); in rw_journal_sectors() 992 WARN_ONCE(1, "asynchronous dm_io failed: %d", r); in rw_journal_sectors() 1102 r = dm_io(&io_req, 1, &io_loc, NULL); in copy_from_journal() 1104 WARN_ONCE(1, "asynchronous dm_io failed: %d", r); in copy_from_journal() 1428 r = dm_io(&fr.io_req, 1, &fr.io_reg, NULL); in dm_integrity_flush_buffers() 2599 r = dm_io(&io_req, 1, &io_loc, NULL); in integrity_recalc()
|
/kernel/linux/linux-5.10/include/linux/ |
H A D | dm-io.h | 68 * For async io calls, users can alternatively use the dm_io() function below 81 int dm_io(struct dm_io_request *io_req, unsigned num_regions,
|
/kernel/linux/linux-6.6/include/linux/ |
H A D | dm-io.h | 69 * For async io calls, users can alternatively use the dm_io() function below 82 int dm_io(struct dm_io_request *io_req, unsigned int num_regions,
|