Home
last modified time | relevance | path

Searched refs:rbio (Results 1 – 10 of 10) sorted by relevance

/linux/fs/bcachefs/
H A Dio_read.c152 static void promote_start(struct promote_op *op, struct bch_read_bio *rbio) in promote_start() argument
156 trace_and_count(op->write.op.c, read_promote, &rbio->bio); in promote_start()
159 BUG_ON(!rbio->bounce); in promote_start()
160 BUG_ON(rbio->bio.bi_vcnt > bio->bi_max_vecs); in promote_start()
162 memcpy(bio->bi_io_vec, rbio->bio.bi_io_vec, in promote_start()
163 sizeof(struct bio_vec) * rbio->bio.bi_vcnt); in promote_start()
164 swap(bio->bi_vcnt, rbio->bio.bi_vcnt); in promote_start()
166 bch2_data_update_read_done(&op->write, rbio->pick.crc); in promote_start()
176 struct bch_read_bio **rbio, in __promote_alloc() argument
201 *rbio = kzalloc(sizeof(struct bch_read_bio) + in __promote_alloc()
[all …]
H A Dio_read.h130 struct bch_read_bio *rbio, struct bpos read_pos, in bch2_read_extent() argument
134 __bch2_read_extent(trans, rbio, rbio->bio.bi_iter, read_pos, in bch2_read_extent()
141 static inline void bch2_read(struct bch_fs *c, struct bch_read_bio *rbio, in bch2_read() argument
146 BUG_ON(rbio->_state); in bch2_read()
148 rbio->c = c; in bch2_read()
149 rbio->start_time = local_clock(); in bch2_read()
150 rbio->subvol = inum.subvol; in bch2_read()
152 __bch2_read(c, rbio, rbio->bio.bi_iter, inum, &failed, in bch2_read()
161 struct bch_read_bio *rbio = to_rbio(bio); in rbio_init() local
163 rbio->_state = 0; in rbio_init()
[all …]
H A Dfs-io-buffered.c145 struct bch_read_bio *rbio, in bchfs_read() argument
156 rbio->c = c; in bchfs_read()
157 rbio->start_time = local_clock(); in bchfs_read()
158 rbio->subvol = inum.subvol; in bchfs_read()
163 POS(inum.inum, rbio->bio.bi_iter.bi_sector), in bchfs_read()
181 POS(inum.inum, rbio->bio.bi_iter.bi_sector)); in bchfs_read()
204 ret = readpage_bio_extend(trans, readpages_iter, &rbio->bio, sectors, in bchfs_read()
210 bytes = min(sectors, bio_sectors(&rbio->bio)) << 9; in bchfs_read()
211 swap(rbio->bio.bi_iter.bi_size, bytes); in bchfs_read()
213 if (rbio->bio.bi_iter.bi_size == bytes) in bchfs_read()
[all …]
H A Dfs-io-direct.c25 struct bch_read_bio rbio; member
43 bio_check_or_release(&dio->rbio.bio, dio->should_dirty); in CLOSURE_CALLBACK()
104 dio = container_of(bio, struct dio_read, rbio.bio); in bch2_direct_IO_read()
174 bio_check_or_release(&dio->rbio.bio, dio->should_dirty); in bch2_direct_IO_read()
683 4, offsetof(struct dio_read, rbio.bio), in bch2_fs_fs_io_direct_init()
H A Dec.c840 int bch2_ec_read_extent(struct btree_trans *trans, struct bch_read_bio *rbio, in bch2_ec_read_extent() argument
854 BUG_ON(!rbio->pick.has_ec); in bch2_ec_read_extent()
860 ret = lockrestart_do(trans, get_stripe_key_trans(trans, rbio->pick.ec.idx, buf)); in bch2_ec_read_extent()
868 if (!bch2_ptr_matches_stripe(v, rbio->pick)) { in bch2_ec_read_extent()
873 offset = rbio->bio.bi_iter.bi_sector - v->ptrs[rbio->pick.ec.block].offset; in bch2_ec_read_extent()
874 if (offset + bio_sectors(&rbio->bio) > le16_to_cpu(v->sectors)) { in bch2_ec_read_extent()
879 ret = ec_stripe_buf_init(buf, offset, bio_sectors(&rbio->bio)); in bch2_ec_read_extent()
901 memcpy_to_bio(&rbio->bio, rbio->bio.bi_iter, in bch2_ec_read_extent()
902 buf->data[rbio->pick.ec.block] + ((offset - buf->offset) << 9)); in bch2_ec_read_extent()
/linux/fs/btrfs/
H A Draid56.h202 void raid56_parity_submit_scrub_rbio(struct btrfs_raid_bio *rbio);
204 void raid56_parity_cache_data_pages(struct btrfs_raid_bio *rbio,
H A Dscrub.c1955 struct btrfs_raid_bio *rbio; in scrub_raid56_parity_stripe() local
2082 rbio = raid56_parity_alloc_scrub_rbio(bio, bioc, scrub_dev, &extent_bitmap, in scrub_raid56_parity_stripe()
2085 if (!rbio) { in scrub_raid56_parity_stripe()
2094 raid56_parity_cache_data_pages(rbio, stripe->pages, in scrub_raid56_parity_stripe()
2097 raid56_parity_submit_scrub_rbio(rbio); in scrub_raid56_parity_stripe()
/linux/drivers/md/
H A Draid1-10.c38 static void rbio_pool_free(void *rbio, void *data) in rbio_pool_free() argument
40 kfree(rbio); in rbio_pool_free()
H A Draid10.c180 struct bio *rbio = r10_bio->devs[j].repl_bio; in r10buf_pool_alloc() local
184 if (rbio) in r10buf_pool_alloc()
200 if (rbio) { in r10buf_pool_alloc()
202 rbio->bi_private = rp_repl; in r10buf_pool_alloc()
1786 struct bio *mbio, *rbio = NULL; in raid10_handle_discard() local
1836 rbio = bio_alloc_clone(bio->bi_bdev, bio, GFP_NOIO, in raid10_handle_discard()
1838 rbio->bi_end_io = raid10_end_discard_request; in raid10_handle_discard()
1839 rbio->bi_private = r10_bio; in raid10_handle_discard()
1840 r10_bio->devs[disk].repl_bio = rbio; in raid10_handle_discard()
1843 md_submit_discard_bio(mddev, rrdev, rbio, in raid10_handle_discard()
[all …]
/linux/include/trace/events/
H A Dbtrfs.h2399 TP_PROTO(const struct btrfs_raid_bio *rbio,
2403 TP_ARGS(rbio, bio, trace_info),
2418 TP_fast_assign_btrfs(rbio->bioc->fs_info,
2419 __entry->full_stripe = rbio->bioc->full_stripe_logical;
2426 __entry->total_stripes = rbio->bioc->num_stripes;
2427 __entry->real_stripes = rbio->real_stripes;
2428 __entry->nr_data = rbio->nr_data;
2449 TP_PROTO(const struct btrfs_raid_bio *rbio,
2453 TP_ARGS(rbio, bio, trace_info)
2457 TP_PROTO(const struct btrfs_raid_bio *rbio,
[all …]