Lines Matching refs:logical
79 u64 logical; member
99 u64 logical; member
211 u64 logical; member
226 u64 logical; member
239 u64 logical; member
273 static int scrub_pages(struct scrub_ctx *sctx, u64 logical, u64 len,
300 static int copy_nocow_pages(struct scrub_ctx *sctx, u64 logical, u64 len,
580 swarn->errstr, swarn->logical, in scrub_print_warning_inode()
593 swarn->errstr, swarn->logical, in scrub_print_warning_inode()
628 swarn.logical = sblock->pagev[0]->logical; in scrub_print_warning()
632 ret = extent_from_logical(fs_info, swarn.logical, path, &found_key, in scrub_print_warning()
637 extent_item_pos = swarn.logical - found_key.objectid; in scrub_print_warning()
651 errstr, swarn.logical, in scrub_print_warning()
737 fixup->logical, page, in scrub_fixup_readpage()
826 ret = iterate_inodes_from_logical(fixup->logical, fixup->root->fs_info, in scrub_fixup_nodatasum()
851 fixup->logical, rcu_str_deref(fixup->dev->name)); in scrub_fixup_nodatasum()
887 u64 logical; in scrub_handle_errored_block() local
914 logical = sblock_to_check->pagev[0]->logical; in scrub_handle_errored_block()
1058 fixup_nodatasum->logical = logical; in scrub_handle_errored_block()
1222 logical, rcu_str_deref(dev->name)); in scrub_handle_errored_block()
1231 logical, rcu_str_deref(dev->name)); in scrub_handle_errored_block()
1271 static inline void scrub_stripe_index_and_offset(u64 logical, u64 map_type, in scrub_stripe_index_and_offset() argument
1287 if (logical >= raid_map[i] && in scrub_stripe_index_and_offset()
1288 logical < raid_map[i] + mapped_length) in scrub_stripe_index_and_offset()
1293 *stripe_offset = logical - raid_map[i]; in scrub_stripe_index_and_offset()
1307 u64 logical = original_sblock->pagev[0]->logical; in scrub_setup_recheck_block() local
1337 ret = btrfs_map_sblock(fs_info, REQ_GET_READ_MIRRORS, logical, in scrub_setup_recheck_block()
1380 page->logical = logical; in scrub_setup_recheck_block()
1387 scrub_stripe_index_and_offset(logical, in scrub_setup_recheck_block()
1416 logical += sublen; in scrub_setup_recheck_block()
1451 bio->bi_iter.bi_sector = page->logical >> 9; in scrub_submit_raid56_bio_wait()
1672 sbio->logical = spage->logical; in scrub_add_page_to_wr_bio()
1693 sbio->logical + sbio->page_count * PAGE_SIZE != in scrub_add_page_to_wr_bio()
1694 spage->logical) { in scrub_add_page_to_wr_bio()
1885 if (sblock->pagev[0]->logical != btrfs_stack_header_bytenr(h)) in scrub_checksum_tree_block()
1950 if (sblock->pagev[0]->logical != btrfs_super_bytenr(s)) in scrub_checksum_super()
2079 sbio->logical = spage->logical; in scrub_add_page_to_rd_bio()
2098 sbio->logical + sbio->page_count * PAGE_SIZE != in scrub_add_page_to_rd_bio()
2099 spage->logical || in scrub_add_page_to_rd_bio()
2143 u64 logical; in scrub_missing_raid56_worker() local
2146 logical = sblock->pagev[0]->logical; in scrub_missing_raid56_worker()
2158 logical, rcu_str_deref(dev->name)); in scrub_missing_raid56_worker()
2165 logical, rcu_str_deref(dev->name)); in scrub_missing_raid56_worker()
2187 u64 logical = sblock->pagev[0]->logical; in scrub_missing_raid56_pages() local
2194 ret = btrfs_map_sblock(fs_info, REQ_GET_READ_MIRRORS, logical, &length, in scrub_missing_raid56_pages()
2214 bio->bi_iter.bi_sector = logical >> 9; in scrub_missing_raid56_pages()
2225 raid56_add_scrub_pages(rbio, spage->page, spage->logical); in scrub_missing_raid56_pages()
2244 static int scrub_pages(struct scrub_ctx *sctx, u64 logical, u64 len, in scrub_pages() argument
2286 spage->logical = logical; in scrub_pages()
2301 logical += l; in scrub_pages()
2446 u64 start = sblock->pagev[0]->logical; in scrub_block_complete()
2447 u64 end = sblock->pagev[sblock->page_count - 1]->logical + in scrub_block_complete()
2455 static int scrub_find_csum(struct scrub_ctx *sctx, u64 logical, u8 *csum) in scrub_find_csum() argument
2464 if (sum->bytenr > logical) in scrub_find_csum()
2466 if (sum->bytenr + sum->len > logical) in scrub_find_csum()
2477 index = ((u32)(logical - sum->bytenr)) / sctx->sectorsize; in scrub_find_csum()
2488 static int scrub_extent(struct scrub_ctx *sctx, u64 logical, u64 len, in scrub_extent() argument
2519 have_csum = scrub_find_csum(sctx, logical, csum); in scrub_extent()
2523 ret = copy_nocow_pages(sctx, logical, l, in scrub_extent()
2529 ret = scrub_pages(sctx, logical, l, physical, dev, flags, gen, in scrub_extent()
2536 logical += l; in scrub_extent()
2544 u64 logical, u64 len, in scrub_pages_for_parity() argument
2592 spage->logical = logical; in scrub_pages_for_parity()
2606 logical += l; in scrub_pages_for_parity()
2628 u64 logical, u64 len, in scrub_extent_for_parity() argument
2638 scrub_parity_mark_sectors_error(sparity, logical, len); in scrub_extent_for_parity()
2657 have_csum = scrub_find_csum(sctx, logical, csum); in scrub_extent_for_parity()
2661 ret = scrub_pages_for_parity(sparity, logical, l, physical, dev, in scrub_extent_for_parity()
2668 logical += l; in scrub_extent_for_parity()
2803 raid56_add_scrub_pages(rbio, spage->page, spage->logical); in scrub_parity_check_and_repair()
3082 u64 logical; in scrub_stripe() local
3154 logical = base + offset; in scrub_stripe()
3161 logic_end = logical + increment * nstripes; in scrub_stripe()
3168 key.objectid = logical; in scrub_stripe()
3178 key.offset = logical; in scrub_stripe()
3227 &logical, in scrub_stripe()
3229 logical += base; in scrub_stripe()
3247 key.objectid = logical; in scrub_stripe()
3296 if (key.objectid + bytes <= logical) in scrub_stripe()
3299 if (key.objectid >= logical + map->stripe_len) { in scrub_stripe()
3312 (key.objectid < logical || in scrub_stripe()
3314 logical + map->stripe_len)) { in scrub_stripe()
3317 key.objectid, logical); in scrub_stripe()
3331 if (extent_logical < logical) { in scrub_stripe()
3332 extent_len -= logical - extent_logical; in scrub_stripe()
3333 extent_logical = logical; in scrub_stripe()
3336 logical + map->stripe_len) { in scrub_stripe()
3337 extent_len = logical + map->stripe_len - in scrub_stripe()
3341 extent_physical = extent_logical - logical + physical; in scrub_stripe()
3361 extent_logical - logical + physical); in scrub_stripe()
3378 num, map, &logical, in scrub_stripe()
3380 logical += base; in scrub_stripe()
3396 logical += increment; in scrub_stripe()
3398 if (logical < key.objectid + bytes) { in scrub_stripe()
3413 logical += increment; in scrub_stripe()
4121 static int copy_nocow_pages(struct scrub_ctx *sctx, u64 logical, u64 len, in copy_nocow_pages() argument
4138 nocow_ctx->logical = logical; in copy_nocow_pages()
4173 u64 logical = nocow_ctx->logical; in copy_nocow_pages_worker() local
4202 ret = iterate_inodes_from_logical(logical, fs_info, path, in copy_nocow_pages_worker()
4207 logical, physical_for_dev_replace, len, mirror_num, in copy_nocow_pages_worker()
4253 u64 logical) in check_extent_to_block() argument
4282 if (em->block_start > logical || in check_extent_to_block()
4283 em->block_start + em->block_len < logical + len) { in check_extent_to_block()
4339 nocow_ctx_logical = nocow_ctx->logical; in copy_nocow_pages_for_inode()