Lines Matching refs:devs
127 int size = offsetof(struct r10bio, devs[conf->copies]); in r10bio_pool_alloc()
189 r10_bio->devs[j].bio = bio; in r10buf_pool_alloc()
195 r10_bio->devs[j].repl_bio = bio; in r10buf_pool_alloc()
202 struct bio *rbio = r10_bio->devs[j].repl_bio; in r10buf_pool_alloc()
209 bio = r10_bio->devs[j].bio; in r10buf_pool_alloc()
237 if (r10_bio->devs[j].bio) in r10buf_pool_alloc()
238 bio_put(r10_bio->devs[j].bio); in r10buf_pool_alloc()
239 if (r10_bio->devs[j].repl_bio) in r10buf_pool_alloc()
240 bio_put(r10_bio->devs[j].repl_bio); in r10buf_pool_alloc()
256 struct bio *bio = r10bio->devs[j].bio; in r10buf_pool_free()
264 bio = r10bio->devs[j].repl_bio; in r10buf_pool_free()
280 struct bio **bio = & r10_bio->devs[i].bio; in put_all_bios()
284 bio = &r10_bio->devs[i].repl_bio; in put_all_bios()
355 conf->mirrors[r10_bio->devs[slot].devnum].head_position = in update_head_pos()
356 r10_bio->devs[slot].addr + (r10_bio->sectors); in update_head_pos()
369 if (r10_bio->devs[slot].bio == bio) in find_bio_disk()
371 if (r10_bio->devs[slot].repl_bio == bio) { in find_bio_disk()
384 return r10_bio->devs[slot].devnum; in find_bio_disk()
396 rdev = r10_bio->devs[slot].rdev; in raid10_end_read_request()
513 r10_bio->devs[slot].bio = NULL; in raid10_end_write_request()
547 r10_bio->devs[slot].addr, in raid10_end_write_request()
552 r10_bio->devs[slot].repl_bio = IO_MADE_GOOD; in raid10_end_write_request()
554 r10_bio->devs[slot].bio = IO_MADE_GOOD; in raid10_end_write_request()
630 r10bio->devs[slot].devnum = d; in __raid10_find_phys()
631 r10bio->devs[slot].addr = s; in __raid10_find_phys()
648 r10bio->devs[slot].devnum = d; in __raid10_find_phys()
649 r10bio->devs[slot].addr = s; in __raid10_find_phys()
779 if (r10_bio->devs[slot].bio == IO_BLOCKED) in read_balance()
781 disk = r10_bio->devs[slot].devnum; in read_balance()
784 r10_bio->devs[slot].addr + sectors > rdev->recovery_offset) in read_balance()
790 r10_bio->devs[slot].addr + sectors > rdev->recovery_offset) in read_balance()
793 dev_sector = r10_bio->devs[slot].addr; in read_balance()
840 new_distance = r10_bio->devs[slot].addr; in read_balance()
842 new_distance = abs(r10_bio->devs[slot].addr - in read_balance()
1141 if (r10_bio->devs[slot].rdev) { in raid10_read_request()
1157 disk = r10_bio->devs[slot].devnum; in raid10_read_request()
1164 err_rdev = r10_bio->devs[slot].rdev; in raid10_read_request()
1220 r10_bio->devs[slot].bio = read_bio; in raid10_read_request()
1221 r10_bio->devs[slot].rdev = rdev; in raid10_read_request()
1223 read_bio->bi_iter.bi_sector = r10_bio->devs[slot].addr + in raid10_read_request()
1253 int devnum = r10_bio->devs[n_copy].devnum; in raid10_write_one_disk()
1268 r10_bio->devs[n_copy].repl_bio = mbio; in raid10_write_one_disk()
1270 r10_bio->devs[n_copy].bio = mbio; in raid10_write_one_disk()
1272 mbio->bi_iter.bi_sector = (r10_bio->devs[n_copy].addr + in raid10_write_one_disk()
1400 int d = r10_bio->devs[i].devnum; in raid10_write_request()
1421 r10_bio->devs[i].bio = NULL; in raid10_write_request()
1422 r10_bio->devs[i].repl_bio = NULL; in raid10_write_request()
1430 sector_t dev_sector = r10_bio->devs[i].addr; in raid10_write_request()
1470 r10_bio->devs[i].bio = bio; in raid10_write_request()
1474 r10_bio->devs[i].repl_bio = bio; in raid10_write_request()
1486 if (r10_bio->devs[j].bio) { in raid10_write_request()
1487 d = r10_bio->devs[j].devnum; in raid10_write_request()
1490 if (r10_bio->devs[j].repl_bio) { in raid10_write_request()
1492 d = r10_bio->devs[j].devnum; in raid10_write_request()
1525 if (r10_bio->devs[i].bio) in raid10_write_request()
1527 if (r10_bio->devs[i].repl_bio) in raid10_write_request()
1546 memset(r10_bio->devs, 0, sizeof(r10_bio->devs[0]) * conf->copies); in __make_request()
2015 r10_bio->devs[slot].addr, in end_sync_write()
2053 if (!r10_bio->devs[i].bio->bi_status) in sync_request_write()
2060 fbio = r10_bio->devs[i].bio; in sync_request_write()
2072 tbio = r10_bio->devs[i].bio; in sync_request_write()
2080 d = r10_bio->devs[i].devnum; in sync_request_write()
2082 if (!r10_bio->devs[i].bio->bi_status) { in sync_request_write()
2121 tbio->bi_iter.bi_sector = r10_bio->devs[i].addr; in sync_request_write()
2144 tbio = r10_bio->devs[i].repl_bio; in sync_request_write()
2147 if (r10_bio->devs[i].bio->bi_end_io != end_sync_write in sync_request_write()
2148 && r10_bio->devs[i].bio != fbio) in sync_request_write()
2150 d = r10_bio->devs[i].devnum; in sync_request_write()
2185 struct bio *bio = r10_bio->devs[0].bio; in fix_recovery_read_error()
2189 int dr = r10_bio->devs[0].devnum; in fix_recovery_read_error()
2190 int dw = r10_bio->devs[1].devnum; in fix_recovery_read_error()
2203 addr = r10_bio->devs[0].addr + sect, in fix_recovery_read_error()
2211 addr = r10_bio->devs[1].addr + sect; in fix_recovery_read_error()
2235 addr = r10_bio->devs[1].addr + sect; in fix_recovery_read_error()
2273 d = r10_bio->devs[1].devnum; in recovery_request_write()
2274 wbio = r10_bio->devs[1].bio; in recovery_request_write()
2275 wbio2 = r10_bio->devs[1].repl_bio; in recovery_request_write()
2369 int d = r10_bio->devs[r10_bio->read_slot].devnum; in fix_read_error()
2393 r10_bio->devs[r10_bio->read_slot].bio = IO_BLOCKED; in fix_read_error()
2411 d = r10_bio->devs[sl].devnum; in fix_read_error()
2416 is_badblock(rdev, r10_bio->devs[sl].addr + sect, s, in fix_read_error()
2421 r10_bio->devs[sl].addr + in fix_read_error()
2442 int dn = r10_bio->devs[r10_bio->read_slot].devnum; in fix_read_error()
2447 r10_bio->devs[r10_bio->read_slot].addr in fix_read_error()
2451 r10_bio->devs[r10_bio->read_slot].bio in fix_read_error()
2466 d = r10_bio->devs[sl].devnum; in fix_read_error()
2476 r10_bio->devs[sl].addr + in fix_read_error()
2502 d = r10_bio->devs[sl].devnum; in fix_read_error()
2512 r10_bio->devs[sl].addr + in fix_read_error()
2553 struct md_rdev *rdev = conf->mirrors[r10_bio->devs[i].devnum].rdev; in narrow_write_error()
2589 wsector = r10_bio->devs[i].addr + (sector - r10_bio->sector); in narrow_write_error()
2614 struct md_rdev *rdev = r10_bio->devs[slot].rdev; in handle_read_error()
2624 bio = r10_bio->devs[slot].bio; in handle_read_error()
2626 r10_bio->devs[slot].bio = NULL; in handle_read_error()
2629 r10_bio->devs[slot].bio = IO_BLOCKED; in handle_read_error()
2657 int dev = r10_bio->devs[m].devnum; in handle_write_completed()
2659 if (r10_bio->devs[m].bio == NULL || in handle_write_completed()
2660 r10_bio->devs[m].bio->bi_end_io == NULL) in handle_write_completed()
2662 if (!r10_bio->devs[m].bio->bi_status) { in handle_write_completed()
2665 r10_bio->devs[m].addr, in handle_write_completed()
2670 r10_bio->devs[m].addr, in handle_write_completed()
2675 if (r10_bio->devs[m].repl_bio == NULL || in handle_write_completed()
2676 r10_bio->devs[m].repl_bio->bi_end_io == NULL) in handle_write_completed()
2679 if (!r10_bio->devs[m].repl_bio->bi_status) { in handle_write_completed()
2682 r10_bio->devs[m].addr, in handle_write_completed()
2687 r10_bio->devs[m].addr, in handle_write_completed()
2696 int dev = r10_bio->devs[m].devnum; in handle_write_completed()
2697 struct bio *bio = r10_bio->devs[m].bio; in handle_write_completed()
2702 r10_bio->devs[m].addr, in handle_write_completed()
2714 bio = r10_bio->devs[m].repl_bio; in handle_write_completed()
2719 r10_bio->devs[m].addr, in handle_write_completed()
2851 bio = r10bio->devs[i].bio; in raid10_alloc_init_r10buf()
2855 bio = r10bio->devs[i].repl_bio; in raid10_alloc_init_r10buf()
3167 int d = r10_bio->devs[j].devnum; in raid10_sync_request()
3178 sector = r10_bio->devs[j].addr; in raid10_sync_request()
3192 bio = r10_bio->devs[0].bio; in raid10_sync_request()
3199 from_addr = r10_bio->devs[j].addr; in raid10_sync_request()
3207 if (r10_bio->devs[k].devnum == i) in raid10_sync_request()
3210 to_addr = r10_bio->devs[k].addr; in raid10_sync_request()
3211 r10_bio->devs[0].devnum = d; in raid10_sync_request()
3212 r10_bio->devs[0].addr = from_addr; in raid10_sync_request()
3213 r10_bio->devs[1].devnum = i; in raid10_sync_request()
3214 r10_bio->devs[1].addr = to_addr; in raid10_sync_request()
3217 bio = r10_bio->devs[1].bio; in raid10_sync_request()
3227 r10_bio->devs[1].bio->bi_end_io = NULL; in raid10_sync_request()
3230 bio = r10_bio->devs[1].repl_bio; in raid10_sync_request()
3264 if (r10_bio->devs[k].devnum == i) in raid10_sync_request()
3270 r10_bio->devs[k].addr, in raid10_sync_request()
3276 r10_bio->devs[k].addr, in raid10_sync_request()
3300 if (r10_bio->devs[0].bio->bi_opf & MD_FAILFAST) { in raid10_sync_request()
3307 int d = r10_bio->devs[j].devnum; in raid10_sync_request()
3314 r10_bio->devs[0].bio->bi_opf in raid10_sync_request()
3367 int d = r10_bio->devs[i].devnum; in raid10_sync_request()
3372 if (r10_bio->devs[i].repl_bio) in raid10_sync_request()
3373 r10_bio->devs[i].repl_bio->bi_end_io = NULL; in raid10_sync_request()
3375 bio = r10_bio->devs[i].bio; in raid10_sync_request()
3383 sector = r10_bio->devs[i].addr; in raid10_sync_request()
3416 bio = r10_bio->devs[i].repl_bio; in raid10_sync_request()
3419 sector = r10_bio->devs[i].addr; in raid10_sync_request()
3434 int d = r10_bio->devs[i].devnum; in raid10_sync_request()
3435 if (r10_bio->devs[i].bio->bi_end_io) in raid10_sync_request()
3438 if (r10_bio->devs[i].repl_bio && in raid10_sync_request()
3439 r10_bio->devs[i].repl_bio->bi_end_io) in raid10_sync_request()
4040 static void *raid10_takeover_raid0(struct mddev *mddev, sector_t size, int devs) in raid10_takeover_raid0() argument
4050 sector_div(size, devs); in raid10_takeover_raid0()
4559 read_bio->bi_iter.bi_sector = (r10_bio->devs[r10_bio->read_slot].addr in reshape_request()
4569 r10_bio->read_slot = r10_bio->devs[r10_bio->read_slot].devnum; in reshape_request()
4580 int d = r10_bio->devs[s/2].devnum; in reshape_request()
4584 b = r10_bio->devs[s/2].repl_bio; in reshape_request()
4587 b = r10_bio->devs[s/2].bio; in reshape_request()
4593 b->bi_iter.bi_sector = r10_bio->devs[s/2].addr + in reshape_request()
4604 pages = get_resync_pages(r10_bio->devs[0].bio)->pages; in reshape_request()
4672 int d = r10_bio->devs[s/2].devnum; in reshape_request_write()
4677 b = r10_bio->devs[s/2].repl_bio; in reshape_request_write()
4680 b = r10_bio->devs[s/2].bio; in reshape_request_write()
4741 pages = get_resync_pages(r10_bio->devs[0].bio)->pages; in handle_reshape_read_error()
4756 int d = r10b->devs[slot].devnum; in handle_reshape_read_error()
4764 addr = r10b->devs[slot].addr + idx * PAGE_SIZE; in handle_reshape_read_error()