Lines Matching refs:stripe
1066 struct btrfs_bio_stripe *stripe; in rbio_add_io_page() local
1069 stripe = &rbio->bbio->stripes[stripe_nr]; in rbio_add_io_page()
1070 disk_start = stripe->physical + (page_index << PAGE_CACHE_SHIFT); in rbio_add_io_page()
1073 if (!stripe->dev->bdev) in rbio_add_io_page()
1085 if (last_end == disk_start && stripe->dev->bdev && in rbio_add_io_page()
1087 last->bi_bdev == stripe->dev->bdev) { in rbio_add_io_page()
1100 bio->bi_bdev = stripe->dev->bdev; in rbio_add_io_page()
1129 static struct page *rbio_stripe_page(struct btrfs_raid_bio *rbio, int stripe, int page) in rbio_stripe_page() argument
1132 index = stripe * (rbio->stripe_len >> PAGE_CACHE_SHIFT); in rbio_stripe_page()
1182 int stripe; in finish_rmw() local
1234 for (stripe = 0; stripe < nr_data; stripe++) { in finish_rmw()
1235 p = page_in_rbio(rbio, stripe, pagenr, 0); in finish_rmw()
1236 pointers[stripe] = kmap(p); in finish_rmw()
1242 pointers[stripe++] = kmap(p); in finish_rmw()
1252 pointers[stripe++] = kmap(p); in finish_rmw()
1263 for (stripe = 0; stripe < rbio->real_stripes; stripe++) in finish_rmw()
1264 kunmap(page_in_rbio(rbio, stripe, pagenr, 0)); in finish_rmw()
1272 for (stripe = 0; stripe < rbio->real_stripes; stripe++) { in finish_rmw()
1275 if (stripe < rbio->nr_data) { in finish_rmw()
1276 page = page_in_rbio(rbio, stripe, pagenr, 1); in finish_rmw()
1280 page = rbio_stripe_page(rbio, stripe, pagenr); in finish_rmw()
1284 page, stripe, pagenr, rbio->stripe_len); in finish_rmw()
1293 for (stripe = 0; stripe < rbio->real_stripes; stripe++) { in finish_rmw()
1294 if (!bbio->tgtdev_map[stripe]) in finish_rmw()
1299 if (stripe < rbio->nr_data) { in finish_rmw()
1300 page = page_in_rbio(rbio, stripe, pagenr, 1); in finish_rmw()
1304 page = rbio_stripe_page(rbio, stripe, pagenr); in finish_rmw()
1308 rbio->bbio->tgtdev_map[stripe], in finish_rmw()
1345 struct btrfs_bio_stripe *stripe; in find_bio_stripe() local
1350 stripe = &rbio->bbio->stripes[i]; in find_bio_stripe()
1351 stripe_start = stripe->physical; in find_bio_stripe()
1354 bio->bi_bdev == stripe->dev->bdev) { in find_bio_stripe()
1513 int stripe; in raid56_rmw_stripe() local
1529 for (stripe = 0; stripe < rbio->nr_data; stripe++) { in raid56_rmw_stripe()
1538 page = page_in_rbio(rbio, stripe, pagenr, 1); in raid56_rmw_stripe()
1542 page = rbio_stripe_page(rbio, stripe, pagenr); in raid56_rmw_stripe()
1551 stripe, pagenr, rbio->stripe_len); in raid56_rmw_stripe()
1803 int pagenr, stripe; in __raid_recover_end_io() local
1841 for (stripe = 0; stripe < rbio->real_stripes; stripe++) { in __raid_recover_end_io()
1848 (stripe == faila || stripe == failb)) { in __raid_recover_end_io()
1849 page = page_in_rbio(rbio, stripe, pagenr, 0); in __raid_recover_end_io()
1851 page = rbio_stripe_page(rbio, stripe, pagenr); in __raid_recover_end_io()
1853 pointers[stripe] = kmap(page); in __raid_recover_end_io()
1926 for (stripe = faila; stripe < rbio->nr_data - 1; stripe++) in __raid_recover_end_io()
1927 pointers[stripe] = pointers[stripe + 1]; in __raid_recover_end_io()
1951 for (stripe = 0; stripe < rbio->real_stripes; stripe++) { in __raid_recover_end_io()
1958 (stripe == faila || stripe == failb)) { in __raid_recover_end_io()
1959 page = page_in_rbio(rbio, stripe, pagenr, 0); in __raid_recover_end_io()
1961 page = rbio_stripe_page(rbio, stripe, pagenr); in __raid_recover_end_io()
2038 int stripe; in __raid56_parity_recover() local
2054 for (stripe = 0; stripe < rbio->real_stripes; stripe++) { in __raid56_parity_recover()
2055 if (rbio->faila == stripe || rbio->failb == stripe) { in __raid56_parity_recover()
2067 p = rbio_stripe_page(rbio, stripe, pagenr); in __raid56_parity_recover()
2072 rbio_stripe_page(rbio, stripe, pagenr), in __raid56_parity_recover()
2073 stripe, pagenr, rbio->stripe_len); in __raid56_parity_recover()
2322 int stripe; in finish_parity_scrub() local
2379 for (stripe = 0; stripe < nr_data; stripe++) { in finish_parity_scrub()
2380 p = page_in_rbio(rbio, stripe, pagenr, 0); in finish_parity_scrub()
2381 pointers[stripe] = kmap(p); in finish_parity_scrub()
2385 pointers[stripe++] = kmap(p_page); in finish_parity_scrub()
2393 pointers[stripe++] = kmap(q_page); in finish_parity_scrub()
2413 for (stripe = 0; stripe < rbio->real_stripes; stripe++) in finish_parity_scrub()
2414 kunmap(page_in_rbio(rbio, stripe, pagenr, 0)); in finish_parity_scrub()
2476 static inline int is_data_stripe(struct btrfs_raid_bio *rbio, int stripe) in is_data_stripe() argument
2478 if (stripe >= 0 && stripe < rbio->nr_data) in is_data_stripe()
2580 int stripe; in raid56_parity_scrub_stripe() local
2594 for (stripe = 0; stripe < rbio->real_stripes; stripe++) { in raid56_parity_scrub_stripe()
2603 page = page_in_rbio(rbio, stripe, pagenr, 1); in raid56_parity_scrub_stripe()
2607 page = rbio_stripe_page(rbio, stripe, pagenr); in raid56_parity_scrub_stripe()
2616 stripe, pagenr, rbio->stripe_len); in raid56_parity_scrub_stripe()