Lines Matching refs:r10bio
73 static void reshape_request_write(struct mddev *mddev, struct r10bio *r10_bio);
86 static inline struct r10bio *get_resync_r10bio(struct bio *bio) in get_resync_r10bio()
94 int size = offsetof(struct r10bio, devs[conf->geo.raid_disks]); in r10bio_pool_alloc()
119 struct r10bio *r10_bio; in r10buf_pool_alloc()
213 struct r10bio *r10bio = __r10_bio; in r10buf_pool_free() local
218 struct bio *bio = r10bio->devs[j].bio; in r10buf_pool_free()
226 bio = r10bio->devs[j].repl_bio; in r10buf_pool_free()
234 rbio_pool_free(r10bio, conf); in r10buf_pool_free()
237 static void put_all_bios(struct r10conf *conf, struct r10bio *r10_bio) in put_all_bios()
253 static void free_r10bio(struct r10bio *r10_bio) in free_r10bio()
261 static void put_buf(struct r10bio *r10_bio) in put_buf()
270 static void reschedule_retry(struct r10bio *r10_bio) in reschedule_retry()
292 static void raid_end_bio_io(struct r10bio *r10_bio) in raid_end_bio_io()
315 static inline void update_head_pos(int slot, struct r10bio *r10_bio) in update_head_pos()
326 static int find_bio_disk(struct r10conf *conf, struct r10bio *r10_bio, in find_bio_disk()
353 struct r10bio *r10_bio = bio->bi_private; in raid10_end_read_request()
403 static void close_write(struct r10bio *r10_bio) in close_write()
413 static void one_write_done(struct r10bio *r10_bio) in one_write_done()
430 struct r10bio *r10_bio = bio->bi_private; in raid10_end_write_request()
562 static void __raid10_find_phys(struct geom *geo, struct r10bio *r10bio) in __raid10_find_phys() argument
579 chunk = r10bio->sector >> geo->chunk_shift; in __raid10_find_phys()
580 sector = r10bio->sector & geo->chunk_mask; in __raid10_find_phys()
595 r10bio->devs[slot].devnum = d; in __raid10_find_phys()
596 r10bio->devs[slot].addr = s; in __raid10_find_phys()
613 r10bio->devs[slot].devnum = d; in __raid10_find_phys()
614 r10bio->devs[slot].addr = s; in __raid10_find_phys()
625 static void raid10_find_phys(struct r10conf *conf, struct r10bio *r10bio) in raid10_find_phys() argument
630 ((r10bio->sector >= conf->reshape_progress) != in raid10_find_phys()
632 set_bit(R10BIO_Previous, &r10bio->state); in raid10_find_phys()
635 clear_bit(R10BIO_Previous, &r10bio->state); in raid10_find_phys()
637 __raid10_find_phys(geo, r10bio); in raid10_find_phys()
705 struct r10bio *r10_bio, in read_balance()
1037 static sector_t choose_data_offset(struct r10bio *r10_bio, in choose_data_offset()
1119 struct r10bio *r10_bio) in raid10_read_request()
1213 static void raid10_write_one_disk(struct mddev *mddev, struct r10bio *r10_bio, in raid10_write_one_disk()
1280 static void wait_blocked_dev(struct mddev *mddev, struct r10bio *r10_bio) in wait_blocked_dev()
1347 struct r10bio *r10_bio) in raid10_write_request()
1507 struct r10bio *r10_bio; in __make_request()
1527 static void raid_end_discard_bio(struct r10bio *r10bio) in raid_end_discard_bio() argument
1529 struct r10conf *conf = r10bio->mddev->private; in raid_end_discard_bio()
1530 struct r10bio *first_r10bio; in raid_end_discard_bio()
1532 while (atomic_dec_and_test(&r10bio->remaining)) { in raid_end_discard_bio()
1536 if (!test_bit(R10BIO_Discard, &r10bio->state)) { in raid_end_discard_bio()
1537 first_r10bio = (struct r10bio *)r10bio->master_bio; in raid_end_discard_bio()
1538 free_r10bio(r10bio); in raid_end_discard_bio()
1539 r10bio = first_r10bio; in raid_end_discard_bio()
1541 md_write_end(r10bio->mddev); in raid_end_discard_bio()
1542 bio_endio(r10bio->master_bio); in raid_end_discard_bio()
1543 free_r10bio(r10bio); in raid_end_discard_bio()
1551 struct r10bio *r10_bio = bio->bi_private; in raid10_end_discard_request()
1592 struct r10bio *r10_bio, *first_r10bio; in raid10_handle_discard()
2197 static void __end_sync_read(struct r10bio *r10_bio, struct bio *bio, int d) in __end_sync_read()
2225 struct r10bio *r10_bio = get_resync_r10bio(bio); in end_sync_read()
2235 struct r10bio *r10_bio = bio->bi_private; in end_reshape_read()
2240 static void end_sync_request(struct r10bio *r10_bio) in end_sync_request()
2256 struct r10bio *r10_bio2 = (struct r10bio *)r10_bio->master_bio; in end_sync_request()
2269 struct r10bio *r10_bio = get_resync_r10bio(bio); in end_sync_write()
2322 static void sync_request_write(struct mddev *mddev, struct r10bio *r10_bio) in sync_request_write()
2455 static void fix_recovery_read_error(struct r10bio *r10_bio) in fix_recovery_read_error()
2538 static void recovery_request_write(struct mddev *mddev, struct r10bio *r10_bio) in recovery_request_write()
2644 static void fix_read_error(struct r10conf *conf, struct mddev *mddev, struct r10bio *r10_bio) in fix_read_error()
2829 static int narrow_write_error(struct r10bio *r10_bio, int i) in narrow_write_error()
2890 static void handle_read_error(struct mddev *mddev, struct r10bio *r10_bio) in handle_read_error()
2924 static void handle_write_completed(struct r10conf *conf, struct r10bio *r10_bio) in handle_write_completed()
3028 struct r10bio *r10_bio; in raid10d()
3048 r10_bio = list_first_entry(&tmp, struct r10bio, in raid10d()
3071 r10_bio = list_entry(head->prev, struct r10bio, retry_list); in raid10d()
3117 static struct r10bio *raid10_alloc_init_r10buf(struct r10conf *conf) in raid10_alloc_init_r10buf()
3119 struct r10bio *r10bio = mempool_alloc(&conf->r10buf_pool, GFP_NOIO); in raid10_alloc_init_r10buf() local
3132 bio = r10bio->devs[i].bio; in raid10_alloc_init_r10buf()
3136 bio = r10bio->devs[i].repl_bio; in raid10_alloc_init_r10buf()
3143 return r10bio; in raid10_alloc_init_r10buf()
3219 struct r10bio *r10_bio; in raid10_sync_request()
3359 struct r10bio *rb2; in raid10_sync_request()
3602 struct r10bio *rb2 = r10_bio; in raid10_sync_request()
3603 r10_bio = (struct r10bio*) rb2->master_bio; in raid10_sync_request()
4740 struct r10bio *r10_bio; in reshape_request()
4977 static void end_reshape_request(struct r10bio *r10_bio);
4979 struct r10bio *r10_bio);
4980 static void reshape_request_write(struct mddev *mddev, struct r10bio *r10_bio) in reshape_request_write()
5059 struct r10bio *r10_bio) in handle_reshape_read_error()
5064 struct r10bio *r10b; in handle_reshape_read_error()
5135 struct r10bio *r10_bio = get_resync_r10bio(bio); in end_reshape_write()
5160 static void end_reshape_request(struct r10bio *r10_bio) in end_reshape_request()