Lines Matching refs:btrfs_raid_bio

61 struct btrfs_raid_bio {
177 static int __raid56_parity_recover(struct btrfs_raid_bio *rbio);
178 static noinline void finish_rmw(struct btrfs_raid_bio *rbio);
181 static int fail_bio_stripe(struct btrfs_raid_bio *rbio, struct bio *bio);
182 static int fail_rbio_index(struct btrfs_raid_bio *rbio, int failed);
183 static void __free_raid_bio(struct btrfs_raid_bio *rbio);
184 static void index_rbio_pages(struct btrfs_raid_bio *rbio);
185 static int alloc_rbio_pages(struct btrfs_raid_bio *rbio);
187 static noinline void finish_parity_scrub(struct btrfs_raid_bio *rbio,
191 static void start_async_work(struct btrfs_raid_bio *rbio, btrfs_func_t work_func)
250 static void cache_rbio_pages(struct btrfs_raid_bio *rbio)
280 static int rbio_bucket(struct btrfs_raid_bio *rbio)
299 static void steal_rbio(struct btrfs_raid_bio *src, struct btrfs_raid_bio *dest)
330 static void merge_rbio(struct btrfs_raid_bio *dest,
331 struct btrfs_raid_bio *victim)
346 static void __remove_rbio_from_cache(struct btrfs_raid_bio *rbio)
406 static void remove_rbio_from_cache(struct btrfs_raid_bio *rbio)
428 struct btrfs_raid_bio *rbio;
435 struct btrfs_raid_bio,
466 static void cache_rbio(struct btrfs_raid_bio *rbio)
493 struct btrfs_raid_bio *found;
496 struct btrfs_raid_bio,
530 static int rbio_is_full(struct btrfs_raid_bio *rbio)
555 static int rbio_can_merge(struct btrfs_raid_bio *last,
556 struct btrfs_raid_bio *cur)
616 static int rbio_stripe_page_index(struct btrfs_raid_bio *rbio, int stripe,
626 static struct page *rbio_stripe_page(struct btrfs_raid_bio *rbio, int stripe,
635 static struct page *rbio_pstripe_page(struct btrfs_raid_bio *rbio, int index)
644 static struct page *rbio_qstripe_page(struct btrfs_raid_bio *rbio, int index)
673 static noinline int lock_stripe_add(struct btrfs_raid_bio *rbio)
676 struct btrfs_raid_bio *cur;
677 struct btrfs_raid_bio *pending;
679 struct btrfs_raid_bio *freeit = NULL;
680 struct btrfs_raid_bio *cache_drop = NULL;
757 static noinline void unlock_stripe(struct btrfs_raid_bio *rbio)
796 struct btrfs_raid_bio *next;
799 next = list_entry(head, struct btrfs_raid_bio,
834 static void __free_raid_bio(struct btrfs_raid_bio *rbio)
873 static void rbio_orig_end_io(struct btrfs_raid_bio *rbio, blk_status_t err)
910 struct btrfs_raid_bio *rbio = bio->bi_private;
949 static struct page *page_in_rbio(struct btrfs_raid_bio *rbio,
977 * allocation and initial setup for the btrfs_raid_bio. Not
980 static struct btrfs_raid_bio *alloc_rbio(struct btrfs_fs_info *fs_info,
984 struct btrfs_raid_bio *rbio;
1047 static int alloc_rbio_pages(struct btrfs_raid_bio *rbio)
1064 static int alloc_rbio_parity_pages(struct btrfs_raid_bio *rbio)
1087 static int rbio_add_io_page(struct btrfs_raid_bio *rbio,
1144 static void validate_rbio_for_rmw(struct btrfs_raid_bio *rbio)
1162 static void index_rbio_pages(struct btrfs_raid_bio *rbio)
1198 static noinline void finish_rmw(struct btrfs_raid_bio *rbio)
1370 static int find_bio_stripe(struct btrfs_raid_bio *rbio,
1396 static int find_logical_bio_stripe(struct btrfs_raid_bio *rbio,
1414 static int fail_rbio_index(struct btrfs_raid_bio *rbio, int failed)
1446 static int fail_bio_stripe(struct btrfs_raid_bio *rbio,
1482 struct btrfs_raid_bio *rbio = bio->bi_private;
1514 static int raid56_rmw_stripe(struct btrfs_raid_bio *rbio)
1609 static int full_stripe_write(struct btrfs_raid_bio *rbio)
1630 static int partial_stripe_write(struct btrfs_raid_bio *rbio)
1646 static int __raid56_parity_write(struct btrfs_raid_bio *rbio)
1674 struct btrfs_raid_bio *ra = container_of(a, struct btrfs_raid_bio,
1676 struct btrfs_raid_bio *rb = container_of(b, struct btrfs_raid_bio,
1690 struct btrfs_raid_bio *cur;
1691 struct btrfs_raid_bio *last = NULL;
1701 struct btrfs_raid_bio, plug_list);
1755 static void rbio_add_bio(struct btrfs_raid_bio *rbio, struct bio *orig_bio)
1787 struct btrfs_raid_bio *rbio;
1836 static void __raid_recover_end_io(struct btrfs_raid_bio *rbio)
2050 struct btrfs_raid_bio *rbio = bio->bi_private;
2079 static int __raid56_parity_recover(struct btrfs_raid_bio *rbio)
2172 struct btrfs_raid_bio *rbio;
2248 struct btrfs_raid_bio *rbio;
2250 rbio = container_of(work, struct btrfs_raid_bio, work);
2256 struct btrfs_raid_bio *rbio;
2258 rbio = container_of(work, struct btrfs_raid_bio, work);
2272 struct btrfs_raid_bio *
2278 struct btrfs_raid_bio *rbio;
2320 void raid56_add_scrub_pages(struct btrfs_raid_bio *rbio, struct page *page,
2338 static int alloc_rbio_essential_pages(struct btrfs_raid_bio *rbio)
2360 static noinline void finish_parity_scrub(struct btrfs_raid_bio *rbio,
2518 static inline int is_data_stripe(struct btrfs_raid_bio *rbio, int stripe)
2532 static void validate_rbio_for_parity_scrub(struct btrfs_raid_bio *rbio)
2596 struct btrfs_raid_bio *rbio = bio->bi_private;
2616 static void raid56_parity_scrub_stripe(struct btrfs_raid_bio *rbio)
2706 struct btrfs_raid_bio *rbio;
2708 rbio = container_of(work, struct btrfs_raid_bio, work);
2712 void raid56_parity_submit_scrub_rbio(struct btrfs_raid_bio *rbio)
2720 struct btrfs_raid_bio *
2724 struct btrfs_raid_bio *rbio;
2754 void raid56_submit_missing_rbio(struct btrfs_raid_bio *rbio)