Lines Matching refs:btrfs_raid_bio

62 			    const struct btrfs_raid_bio *rbio)  in btrfs_dump_rbio()
149 static void index_rbio_pages(struct btrfs_raid_bio *rbio);
150 static int alloc_rbio_pages(struct btrfs_raid_bio *rbio);
152 static int finish_parity_scrub(struct btrfs_raid_bio *rbio);
155 static void free_raid_bio_pointers(struct btrfs_raid_bio *rbio) in free_raid_bio_pointers()
164 static void free_raid_bio(struct btrfs_raid_bio *rbio) in free_raid_bio()
187 static void start_async_work(struct btrfs_raid_bio *rbio, work_func_t work_func) in start_async_work()
245 static void cache_rbio_pages(struct btrfs_raid_bio *rbio) in cache_rbio_pages()
281 static int rbio_bucket(struct btrfs_raid_bio *rbio) in rbio_bucket()
296 static bool full_page_sectors_uptodate(struct btrfs_raid_bio *rbio, in full_page_sectors_uptodate()
319 static void index_stripe_sectors(struct btrfs_raid_bio *rbio) in index_stripe_sectors()
334 static void steal_rbio_page(struct btrfs_raid_bio *src, in steal_rbio_page()
335 struct btrfs_raid_bio *dest, int page_nr) in steal_rbio_page()
352 static bool is_data_stripe_page(struct btrfs_raid_bio *rbio, int page_nr) in is_data_stripe_page()
374 static void steal_rbio(struct btrfs_raid_bio *src, struct btrfs_raid_bio *dest) in steal_rbio()
410 static void merge_rbio(struct btrfs_raid_bio *dest, in merge_rbio()
411 struct btrfs_raid_bio *victim) in merge_rbio()
424 static void __remove_rbio_from_cache(struct btrfs_raid_bio *rbio) in __remove_rbio_from_cache()
484 static void remove_rbio_from_cache(struct btrfs_raid_bio *rbio) in remove_rbio_from_cache()
504 struct btrfs_raid_bio *rbio; in btrfs_clear_rbio_cache()
511 struct btrfs_raid_bio, in btrfs_clear_rbio_cache()
542 static void cache_rbio(struct btrfs_raid_bio *rbio) in cache_rbio()
568 struct btrfs_raid_bio *found; in cache_rbio()
571 struct btrfs_raid_bio, in cache_rbio()
605 static int rbio_is_full(struct btrfs_raid_bio *rbio) in rbio_is_full()
629 static int rbio_can_merge(struct btrfs_raid_bio *last, in rbio_can_merge()
630 struct btrfs_raid_bio *cur) in rbio_can_merge()
670 static unsigned int rbio_stripe_sector_index(const struct btrfs_raid_bio *rbio, in rbio_stripe_sector_index()
681 static struct sector_ptr *rbio_stripe_sector(const struct btrfs_raid_bio *rbio, in rbio_stripe_sector()
690 static struct sector_ptr *rbio_pstripe_sector(const struct btrfs_raid_bio *rbio, in rbio_pstripe_sector()
697 static struct sector_ptr *rbio_qstripe_sector(const struct btrfs_raid_bio *rbio, in rbio_qstripe_sector()
727 static noinline int lock_stripe_add(struct btrfs_raid_bio *rbio) in lock_stripe_add()
730 struct btrfs_raid_bio *cur; in lock_stripe_add()
731 struct btrfs_raid_bio *pending; in lock_stripe_add()
732 struct btrfs_raid_bio *freeit = NULL; in lock_stripe_add()
733 struct btrfs_raid_bio *cache_drop = NULL; in lock_stripe_add()
812 static noinline void unlock_stripe(struct btrfs_raid_bio *rbio) in unlock_stripe()
850 struct btrfs_raid_bio *next; in unlock_stripe()
853 next = list_entry(head, struct btrfs_raid_bio, in unlock_stripe()
902 static void rbio_orig_end_io(struct btrfs_raid_bio *rbio, blk_status_t err) in rbio_orig_end_io()
948 static struct sector_ptr *sector_in_rbio(struct btrfs_raid_bio *rbio, in sector_in_rbio()
981 static struct btrfs_raid_bio *alloc_rbio(struct btrfs_fs_info *fs_info, in alloc_rbio()
990 struct btrfs_raid_bio *rbio; in alloc_rbio()
1050 static int alloc_rbio_pages(struct btrfs_raid_bio *rbio) in alloc_rbio_pages()
1063 static int alloc_rbio_parity_pages(struct btrfs_raid_bio *rbio) in alloc_rbio_parity_pages()
1083 static int get_rbio_veritical_errors(struct btrfs_raid_bio *rbio, int sector_nr, in get_rbio_veritical_errors()
1122 static int rbio_add_io_sector(struct btrfs_raid_bio *rbio, in rbio_add_io_sector()
1195 static void index_one_bio(struct btrfs_raid_bio *rbio, struct bio *bio) in index_one_bio()
1226 static void index_rbio_pages(struct btrfs_raid_bio *rbio) in index_rbio_pages()
1237 static void bio_get_trace_info(struct btrfs_raid_bio *rbio, struct bio *bio, in bio_get_trace_info()
1273 static void assert_rbio(struct btrfs_raid_bio *rbio) in assert_rbio()
1293 static void generate_pq_vertical(struct btrfs_raid_bio *rbio, int sectornr) in generate_pq_vertical()
1335 static int rmw_assemble_write_bios(struct btrfs_raid_bio *rbio, in rmw_assemble_write_bios()
1441 static void set_rbio_range_error(struct btrfs_raid_bio *rbio, struct bio *bio) in set_rbio_range_error()
1479 static struct sector_ptr *find_stripe_sector(struct btrfs_raid_bio *rbio, in find_stripe_sector()
1498 static void set_bio_pages_uptodate(struct btrfs_raid_bio *rbio, struct bio *bio) in set_bio_pages_uptodate()
1520 static int get_bio_sector_nr(struct btrfs_raid_bio *rbio, struct bio *bio) in get_bio_sector_nr()
1539 static void rbio_update_error_bitmap(struct btrfs_raid_bio *rbio, struct bio *bio) in rbio_update_error_bitmap()
1561 static void verify_bio_data_sectors(struct btrfs_raid_bio *rbio, in verify_bio_data_sectors()
1602 struct btrfs_raid_bio *rbio = bio->bi_private; in raid_wait_read_end_io()
1616 static void submit_read_wait_bio_list(struct btrfs_raid_bio *rbio, in submit_read_wait_bio_list()
1637 static int alloc_rbio_data_pages(struct btrfs_raid_bio *rbio) in alloc_rbio_data_pages()
1669 const struct btrfs_raid_bio *ra = container_of(a, struct btrfs_raid_bio, in plug_cmp()
1671 const struct btrfs_raid_bio *rb = container_of(b, struct btrfs_raid_bio, in plug_cmp()
1686 struct btrfs_raid_bio *cur; in raid_unplug()
1687 struct btrfs_raid_bio *last = NULL; in raid_unplug()
1693 struct btrfs_raid_bio, plug_list); in raid_unplug()
1717 static void rbio_add_bio(struct btrfs_raid_bio *rbio, struct bio *orig_bio) in rbio_add_bio()
1750 struct btrfs_raid_bio *rbio; in raid56_parity_write()
1787 static int verify_one_sector(struct btrfs_raid_bio *rbio, in verify_one_sector()
1827 static int recover_vertical(struct btrfs_raid_bio *rbio, int sector_nr, in recover_vertical()
1983 static int recover_sectors(struct btrfs_raid_bio *rbio) in recover_sectors()
2023 static void recover_rbio(struct btrfs_raid_bio *rbio) in recover_rbio()
2088 struct btrfs_raid_bio *rbio; in recover_rbio_work()
2090 rbio = container_of(work, struct btrfs_raid_bio, work); in recover_rbio_work()
2097 recover_rbio(container_of(work, struct btrfs_raid_bio, work)); in recover_rbio_work_locked()
2100 static void set_rbio_raid6_extra_error(struct btrfs_raid_bio *rbio, int mirror_num) in set_rbio_raid6_extra_error()
2155 struct btrfs_raid_bio *rbio; in raid56_parity_recover()
2180 static void fill_data_csums(struct btrfs_raid_bio *rbio) in fill_data_csums()
2241 static int rmw_read_wait_recover(struct btrfs_raid_bio *rbio) in rmw_read_wait_recover()
2284 struct btrfs_raid_bio *rbio = bio->bi_private; in raid_wait_write_end_io()
2294 static void submit_write_bios(struct btrfs_raid_bio *rbio, in submit_write_bios()
2317 static bool need_read_stripe_sectors(struct btrfs_raid_bio *rbio) in need_read_stripe_sectors()
2335 static void rmw_rbio(struct btrfs_raid_bio *rbio) in rmw_rbio()
2422 struct btrfs_raid_bio *rbio; in rmw_rbio_work()
2424 rbio = container_of(work, struct btrfs_raid_bio, work); in rmw_rbio_work()
2431 rmw_rbio(container_of(work, struct btrfs_raid_bio, work)); in rmw_rbio_work_locked()
2444 struct btrfs_raid_bio *raid56_parity_alloc_scrub_rbio(struct bio *bio, in raid56_parity_alloc_scrub_rbio()
2450 struct btrfs_raid_bio *rbio; in raid56_parity_alloc_scrub_rbio()
2485 static int alloc_rbio_essential_pages(struct btrfs_raid_bio *rbio) in alloc_rbio_essential_pages()
2509 static int finish_parity_scrub(struct btrfs_raid_bio *rbio) in finish_parity_scrub()
2662 static inline int is_data_stripe(struct btrfs_raid_bio *rbio, int stripe) in is_data_stripe()
2669 static int recover_scrub_rbio(struct btrfs_raid_bio *rbio) in recover_scrub_rbio()
2753 static int scrub_assemble_read_bios(struct btrfs_raid_bio *rbio) in scrub_assemble_read_bios()
2799 static void scrub_rbio(struct btrfs_raid_bio *rbio) in scrub_rbio()
2840 scrub_rbio(container_of(work, struct btrfs_raid_bio, work)); in scrub_rbio_work_locked()
2843 void raid56_parity_submit_scrub_rbio(struct btrfs_raid_bio *rbio) in raid56_parity_submit_scrub_rbio()
2856 void raid56_parity_cache_data_pages(struct btrfs_raid_bio *rbio, in raid56_parity_cache_data_pages()