/kernel/linux/linux-6.6/fs/btrfs/ |
H A D | raid56.c | 26 /* set when additional merges to this rbio are not allowed */ 30 * set when this rbio is sitting in the hash, but it is just a cache 71 static void index_rbio_pages(struct btrfs_raid_bio *rbio); 72 static int alloc_rbio_pages(struct btrfs_raid_bio *rbio); 74 static int finish_parity_scrub(struct btrfs_raid_bio *rbio); 77 static void free_raid_bio_pointers(struct btrfs_raid_bio *rbio) in free_raid_bio_pointers() argument 79 bitmap_free(rbio->error_bitmap); in free_raid_bio_pointers() 80 kfree(rbio->stripe_pages); in free_raid_bio_pointers() 81 kfree(rbio->bio_sectors); in free_raid_bio_pointers() 82 kfree(rbio in free_raid_bio_pointers() 86 free_raid_bio(struct btrfs_raid_bio *rbio) free_raid_bio() argument 109 start_async_work(struct btrfs_raid_bio *rbio, work_func_t work_func) start_async_work() argument 167 cache_rbio_pages(struct btrfs_raid_bio *rbio) cache_rbio_pages() argument 203 rbio_bucket(struct btrfs_raid_bio *rbio) rbio_bucket() argument 218 full_page_sectors_uptodate(struct btrfs_raid_bio *rbio, unsigned int page_nr) full_page_sectors_uptodate() argument 241 index_stripe_sectors(struct btrfs_raid_bio *rbio) index_stripe_sectors() argument 274 is_data_stripe_page(struct btrfs_raid_bio *rbio, int page_nr) is_data_stripe_page() argument 347 __remove_rbio_from_cache(struct btrfs_raid_bio *rbio) __remove_rbio_from_cache() argument 407 remove_rbio_from_cache(struct btrfs_raid_bio *rbio) remove_rbio_from_cache() argument 427 struct btrfs_raid_bio *rbio; btrfs_clear_rbio_cache() local 465 cache_rbio(struct btrfs_raid_bio *rbio) cache_rbio() argument 528 rbio_is_full(struct btrfs_raid_bio *rbio) rbio_is_full() argument 593 rbio_stripe_sector_index(const struct btrfs_raid_bio *rbio, unsigned int stripe_nr, unsigned int sector_nr) rbio_stripe_sector_index() argument 604 rbio_stripe_sector(const struct btrfs_raid_bio *rbio, unsigned int stripe_nr, unsigned int sector_nr) rbio_stripe_sector() argument 613 rbio_pstripe_sector(const struct btrfs_raid_bio *rbio, unsigned int sector_nr) rbio_pstripe_sector() argument 620 rbio_qstripe_sector(const struct btrfs_raid_bio *rbio, unsigned int sector_nr) rbio_qstripe_sector() argument 650 lock_stripe_add(struct btrfs_raid_bio *rbio) lock_stripe_add() argument 735 unlock_stripe(struct btrfs_raid_bio *rbio) unlock_stripe() argument 825 rbio_orig_end_io(struct btrfs_raid_bio *rbio, blk_status_t err) rbio_orig_end_io() argument 871 sector_in_rbio(struct btrfs_raid_bio *rbio, int stripe_nr, int sector_nr, bool bio_list_only) sector_in_rbio() argument 911 struct btrfs_raid_bio *rbio; alloc_rbio() local 963 alloc_rbio_pages(struct btrfs_raid_bio *rbio) alloc_rbio_pages() argument 976 alloc_rbio_parity_pages(struct btrfs_raid_bio *rbio) alloc_rbio_parity_pages() argument 996 get_rbio_veritical_errors(struct btrfs_raid_bio *rbio, int sector_nr, int *faila, int *failb) get_rbio_veritical_errors() argument 1035 rbio_add_io_sector(struct btrfs_raid_bio *rbio, struct bio_list *bio_list, struct sector_ptr *sector, unsigned int stripe_nr, unsigned int sector_nr, enum req_op op) rbio_add_io_sector() argument 1106 index_one_bio(struct btrfs_raid_bio *rbio, struct bio *bio) index_one_bio() argument 1137 index_rbio_pages(struct btrfs_raid_bio *rbio) index_rbio_pages() argument 1148 bio_get_trace_info(struct btrfs_raid_bio *rbio, struct bio *bio, struct raid56_bio_trace_info *trace_info) bio_get_trace_info() argument 1185 generate_pq_vertical(struct btrfs_raid_bio *rbio, int sectornr) generate_pq_vertical() argument 1226 rmw_assemble_write_bios(struct btrfs_raid_bio *rbio, struct bio_list *bio_list) rmw_assemble_write_bios() argument 1332 set_rbio_range_error(struct btrfs_raid_bio *rbio, struct bio *bio) set_rbio_range_error() argument 1370 find_stripe_sector(struct btrfs_raid_bio *rbio, struct page *page, unsigned int pgoff) find_stripe_sector() argument 1389 set_bio_pages_uptodate(struct btrfs_raid_bio *rbio, struct bio *bio) set_bio_pages_uptodate() argument 1411 get_bio_sector_nr(struct btrfs_raid_bio *rbio, struct bio *bio) get_bio_sector_nr() argument 1430 rbio_update_error_bitmap(struct btrfs_raid_bio *rbio, struct bio *bio) rbio_update_error_bitmap() argument 1452 verify_bio_data_sectors(struct btrfs_raid_bio *rbio, struct bio *bio) verify_bio_data_sectors() argument 1493 struct btrfs_raid_bio *rbio = bio->bi_private; raid_wait_read_end_io() local 1507 submit_read_wait_bio_list(struct btrfs_raid_bio *rbio, struct bio_list *bio_list) submit_read_wait_bio_list() argument 1528 alloc_rbio_data_pages(struct btrfs_raid_bio *rbio) alloc_rbio_data_pages() argument 1609 rbio_add_bio(struct btrfs_raid_bio *rbio, struct bio *orig_bio) rbio_add_bio() argument 1641 struct btrfs_raid_bio *rbio; raid56_parity_write() local 1678 verify_one_sector(struct btrfs_raid_bio *rbio, int stripe_nr, int sector_nr) verify_one_sector() argument 1718 recover_vertical(struct btrfs_raid_bio *rbio, int sector_nr, void **pointers, void **unmap_array) recover_vertical() argument 1874 recover_sectors(struct btrfs_raid_bio *rbio) recover_sectors() argument 1914 recover_rbio(struct btrfs_raid_bio *rbio) recover_rbio() argument 1979 struct btrfs_raid_bio *rbio; recover_rbio_work() local 1991 set_rbio_raid6_extra_error(struct btrfs_raid_bio *rbio, int mirror_num) set_rbio_raid6_extra_error() argument 2046 struct btrfs_raid_bio *rbio; raid56_parity_recover() local 2071 fill_data_csums(struct btrfs_raid_bio *rbio) fill_data_csums() argument 2132 rmw_read_wait_recover(struct btrfs_raid_bio *rbio) rmw_read_wait_recover() argument 2175 struct btrfs_raid_bio *rbio = bio->bi_private; raid_wait_write_end_io() local 2185 submit_write_bios(struct btrfs_raid_bio *rbio, struct bio_list *bio_list) submit_write_bios() argument 2208 need_read_stripe_sectors(struct btrfs_raid_bio *rbio) need_read_stripe_sectors() argument 2226 rmw_rbio(struct btrfs_raid_bio *rbio) rmw_rbio() argument 2313 struct btrfs_raid_bio *rbio; rmw_rbio_work() local 2341 struct btrfs_raid_bio *rbio; raid56_parity_alloc_scrub_rbio() local 2376 alloc_rbio_essential_pages(struct btrfs_raid_bio *rbio) alloc_rbio_essential_pages() argument 2400 finish_parity_scrub(struct btrfs_raid_bio *rbio) finish_parity_scrub() argument 2552 is_data_stripe(struct btrfs_raid_bio *rbio, int stripe) is_data_stripe() argument 2559 recover_scrub_rbio(struct btrfs_raid_bio *rbio) recover_scrub_rbio() argument 2643 scrub_assemble_read_bios(struct btrfs_raid_bio *rbio) scrub_assemble_read_bios() argument 2689 scrub_rbio(struct btrfs_raid_bio *rbio) scrub_rbio() argument 2733 raid56_parity_submit_scrub_rbio(struct btrfs_raid_bio *rbio) raid56_parity_submit_scrub_rbio() argument 2746 raid56_parity_cache_data_pages(struct btrfs_raid_bio *rbio, struct page **data_pages, u64 data_logical) raid56_parity_cache_data_pages() argument [all...] |
H A D | raid56.h | 81 * rbio maps to a full stripe or not. 98 * These are two arrays of pointers. We allocate the rbio big enough 99 * to hold them both and setup their locations when the rbio is 133 * Checksum buffer if the rbio is for data. The buffer should cover 193 void raid56_parity_submit_scrub_rbio(struct btrfs_raid_bio *rbio); 195 void raid56_parity_cache_data_pages(struct btrfs_raid_bio *rbio,
|
H A D | scrub.c | 1851 struct btrfs_raid_bio *rbio; in scrub_raid56_parity_stripe() local 1978 rbio = raid56_parity_alloc_scrub_rbio(bio, bioc, scrub_dev, &extent_bitmap, in scrub_raid56_parity_stripe() 1981 if (!rbio) { in scrub_raid56_parity_stripe() 1990 raid56_parity_cache_data_pages(rbio, stripe->pages, in scrub_raid56_parity_stripe() 1993 raid56_parity_submit_scrub_rbio(rbio); in scrub_raid56_parity_stripe()
|
/kernel/linux/linux-5.10/fs/btrfs/ |
H A D | raid56.c | 22 /* set when additional merges to this rbio are not allowed */ 26 * set when this rbio is sitting in the hash, but it is just a cache 136 * helps us decide if the rbio maps to a full 150 * rbio big enough to hold them both and setup their 151 * locations when the rbio is allocated 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); 191 start_async_work(struct btrfs_raid_bio *rbio, btrfs_func_t work_func) start_async_work() argument 250 cache_rbio_pages(struct btrfs_raid_bio *rbio) cache_rbio_pages() argument 280 rbio_bucket(struct btrfs_raid_bio *rbio) rbio_bucket() argument 346 __remove_rbio_from_cache(struct btrfs_raid_bio *rbio) __remove_rbio_from_cache() argument 406 remove_rbio_from_cache(struct btrfs_raid_bio *rbio) remove_rbio_from_cache() argument 428 struct btrfs_raid_bio *rbio; btrfs_clear_rbio_cache() local 466 cache_rbio(struct btrfs_raid_bio *rbio) cache_rbio() argument 530 rbio_is_full(struct btrfs_raid_bio *rbio) rbio_is_full() argument 616 rbio_stripe_page_index(struct btrfs_raid_bio *rbio, int stripe, int index) rbio_stripe_page_index() argument 626 rbio_stripe_page(struct btrfs_raid_bio *rbio, int stripe, int index) rbio_stripe_page() argument 635 rbio_pstripe_page(struct btrfs_raid_bio *rbio, int index) rbio_pstripe_page() argument 644 rbio_qstripe_page(struct btrfs_raid_bio *rbio, int index) rbio_qstripe_page() argument 673 lock_stripe_add(struct btrfs_raid_bio *rbio) lock_stripe_add() argument 757 unlock_stripe(struct btrfs_raid_bio *rbio) unlock_stripe() argument 834 __free_raid_bio(struct btrfs_raid_bio *rbio) __free_raid_bio() argument 873 rbio_orig_end_io(struct btrfs_raid_bio *rbio, blk_status_t err) rbio_orig_end_io() argument 910 struct btrfs_raid_bio *rbio = bio->bi_private; raid_write_end_io() local 949 page_in_rbio(struct btrfs_raid_bio *rbio, int index, int pagenr, int bio_list_only) page_in_rbio() argument 984 struct btrfs_raid_bio *rbio; alloc_rbio() local 1047 alloc_rbio_pages(struct btrfs_raid_bio *rbio) alloc_rbio_pages() argument 1064 alloc_rbio_parity_pages(struct btrfs_raid_bio *rbio) alloc_rbio_parity_pages() argument 1087 rbio_add_io_page(struct btrfs_raid_bio *rbio, struct bio_list *bio_list, struct page *page, int stripe_nr, unsigned long page_index, unsigned long bio_max_len) rbio_add_io_page() argument 1144 validate_rbio_for_rmw(struct btrfs_raid_bio *rbio) validate_rbio_for_rmw() argument 1162 index_rbio_pages(struct btrfs_raid_bio *rbio) index_rbio_pages() argument 1198 finish_rmw(struct btrfs_raid_bio *rbio) finish_rmw() argument 1370 find_bio_stripe(struct btrfs_raid_bio *rbio, struct bio *bio) find_bio_stripe() argument 1396 find_logical_bio_stripe(struct btrfs_raid_bio *rbio, struct bio *bio) find_logical_bio_stripe() argument 1414 fail_rbio_index(struct btrfs_raid_bio *rbio, int failed) fail_rbio_index() argument 1446 fail_bio_stripe(struct btrfs_raid_bio *rbio, struct bio *bio) fail_bio_stripe() argument 1482 struct btrfs_raid_bio *rbio = bio->bi_private; raid_rmw_end_io() local 1514 raid56_rmw_stripe(struct btrfs_raid_bio *rbio) raid56_rmw_stripe() argument 1609 full_stripe_write(struct btrfs_raid_bio *rbio) full_stripe_write() argument 1630 partial_stripe_write(struct btrfs_raid_bio *rbio) partial_stripe_write() argument 1646 __raid56_parity_write(struct btrfs_raid_bio *rbio) __raid56_parity_write() argument 1755 rbio_add_bio(struct btrfs_raid_bio *rbio, struct bio *orig_bio) rbio_add_bio() argument 1787 struct btrfs_raid_bio *rbio; raid56_parity_write() local 1836 __raid_recover_end_io(struct btrfs_raid_bio *rbio) __raid_recover_end_io() argument 2050 struct btrfs_raid_bio *rbio = bio->bi_private; raid_recover_end_io() local 2079 __raid56_parity_recover(struct btrfs_raid_bio *rbio) __raid56_parity_recover() argument 2172 struct btrfs_raid_bio *rbio; raid56_parity_recover() local 2248 struct btrfs_raid_bio *rbio; rmw_work() local 2256 struct btrfs_raid_bio *rbio; read_rebuild_work() local 2278 struct btrfs_raid_bio *rbio; raid56_parity_alloc_scrub_rbio() local 2320 raid56_add_scrub_pages(struct btrfs_raid_bio *rbio, struct page *page, u64 logical) raid56_add_scrub_pages() argument 2338 alloc_rbio_essential_pages(struct btrfs_raid_bio *rbio) alloc_rbio_essential_pages() argument 2360 finish_parity_scrub(struct btrfs_raid_bio *rbio, int need_check) finish_parity_scrub() argument 2518 is_data_stripe(struct btrfs_raid_bio *rbio, int stripe) is_data_stripe() argument 2532 validate_rbio_for_parity_scrub(struct btrfs_raid_bio *rbio) validate_rbio_for_parity_scrub() argument 2596 struct btrfs_raid_bio *rbio = bio->bi_private; raid56_parity_scrub_end_io() local 2616 raid56_parity_scrub_stripe(struct btrfs_raid_bio *rbio) raid56_parity_scrub_stripe() argument 2706 struct btrfs_raid_bio *rbio; scrub_parity_work() local 2712 raid56_parity_submit_scrub_rbio(struct btrfs_raid_bio *rbio) raid56_parity_submit_scrub_rbio() argument 2724 struct btrfs_raid_bio *rbio; raid56_alloc_missing_rbio() local 2754 raid56_submit_missing_rbio(struct btrfs_raid_bio *rbio) raid56_submit_missing_rbio() argument [all...] |
H A D | raid56.h | 39 void raid56_add_scrub_pages(struct btrfs_raid_bio *rbio, struct page *page, 47 void raid56_parity_submit_scrub_rbio(struct btrfs_raid_bio *rbio); 52 void raid56_submit_missing_rbio(struct btrfs_raid_bio *rbio);
|
H A D | scrub.c | 2101 struct btrfs_raid_bio *rbio; in scrub_missing_raid56_pages() local 2127 rbio = raid56_alloc_missing_rbio(fs_info, bio, bbio, length); in scrub_missing_raid56_pages() 2128 if (!rbio) in scrub_missing_raid56_pages() 2134 raid56_add_scrub_pages(rbio, spage->page, spage->logical); in scrub_missing_raid56_pages() 2140 raid56_submit_missing_rbio(rbio); in scrub_missing_raid56_pages() 2685 struct btrfs_raid_bio *rbio; in scrub_parity_check_and_repair() local 2707 rbio = raid56_parity_alloc_scrub_rbio(fs_info, bio, bbio, in scrub_parity_check_and_repair() 2711 if (!rbio) in scrub_parity_check_and_repair() 2715 raid56_parity_submit_scrub_rbio(rbio); in scrub_parity_check_and_repair()
|
/kernel/linux/linux-5.10/drivers/md/ |
H A D | raid1-10.c | 37 static void rbio_pool_free(void *rbio, void *data) in rbio_pool_free() argument 39 kfree(rbio); in rbio_pool_free()
|
H A D | raid10.c | 164 struct bio *rbio = r10_bio->devs[j].repl_bio; in r10buf_pool_alloc() local 168 if (rbio) in r10buf_pool_alloc() 184 if (rbio) { in r10buf_pool_alloc() 186 rbio->bi_private = rp_repl; in r10buf_pool_alloc()
|
/kernel/linux/linux-6.6/drivers/md/ |
H A D | raid1-10.c | 38 static void rbio_pool_free(void *rbio, void *data) in rbio_pool_free() argument 40 kfree(rbio); in rbio_pool_free()
|
H A D | raid10.c | 181 struct bio *rbio = r10_bio->devs[j].repl_bio; in r10buf_pool_alloc() local 185 if (rbio) in r10buf_pool_alloc() 201 if (rbio) { in r10buf_pool_alloc() 203 rbio->bi_private = rp_repl; in r10buf_pool_alloc() 1817 struct bio *mbio, *rbio = NULL; in raid10_handle_discard() local 1867 rbio = bio_alloc_clone(bio->bi_bdev, bio, GFP_NOIO, in raid10_handle_discard() 1869 rbio->bi_end_io = raid10_end_discard_request; in raid10_handle_discard() 1870 rbio->bi_private = r10_bio; in raid10_handle_discard() 1871 r10_bio->devs[disk].repl_bio = rbio; in raid10_handle_discard() 1874 md_submit_discard_bio(mddev, rrdev, rbio, in raid10_handle_discard() [all...] |
/kernel/linux/linux-6.6/include/trace/events/ |
H A D | btrfs.h | 2435 TP_PROTO(const struct btrfs_raid_bio *rbio, 2439 TP_ARGS(rbio, bio, trace_info), 2454 TP_fast_assign_btrfs(rbio->bioc->fs_info, 2455 __entry->full_stripe = rbio->bioc->full_stripe_logical; 2462 __entry->total_stripes = rbio->bioc->num_stripes; 2463 __entry->real_stripes = rbio->real_stripes; 2464 __entry->nr_data = rbio->nr_data; 2485 TP_PROTO(const struct btrfs_raid_bio *rbio, 2489 TP_ARGS(rbio, bio, trace_info) 2493 TP_PROTO(const struct btrfs_raid_bio *rbio, [all...] |