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,
581 swarn->logical, rcu_str_deref(swarn->dev->name), in scrub_print_warning_inode()
593 swarn->logical, rcu_str_deref(swarn->dev->name), in scrub_print_warning_inode()
626 swarn.logical = sblock->pagev[0]->logical; in scrub_print_warning()
630 ret = extent_from_logical(fs_info, swarn.logical, path, &found_key, in scrub_print_warning()
635 extent_item_pos = swarn.logical - found_key.objectid; in scrub_print_warning()
650 "%llu", errstr, swarn.logical, in scrub_print_warning()
736 fixup->logical, page, in scrub_fixup_readpage()
825 ret = iterate_inodes_from_logical(fixup->logical, fixup->root->fs_info, in scrub_fixup_nodatasum()
850 fixup->logical, rcu_str_deref(fixup->dev->name)); in scrub_fixup_nodatasum()
886 u64 logical; in scrub_handle_errored_block() local
913 logical = sblock_to_check->pagev[0]->logical; in scrub_handle_errored_block()
1057 fixup_nodatasum->logical = logical; in scrub_handle_errored_block()
1221 logical, rcu_str_deref(dev->name)); in scrub_handle_errored_block()
1230 logical, rcu_str_deref(dev->name)); in scrub_handle_errored_block()
1270 static inline void scrub_stripe_index_and_offset(u64 logical, u64 map_type, in scrub_stripe_index_and_offset() argument
1286 if (logical >= raid_map[i] && in scrub_stripe_index_and_offset()
1287 logical < raid_map[i] + mapped_length) in scrub_stripe_index_and_offset()
1292 *stripe_offset = logical - raid_map[i]; in scrub_stripe_index_and_offset()
1306 u64 logical = original_sblock->pagev[0]->logical; in scrub_setup_recheck_block() local
1336 ret = btrfs_map_sblock(fs_info, REQ_GET_READ_MIRRORS, logical, in scrub_setup_recheck_block()
1379 page->logical = logical; in scrub_setup_recheck_block()
1386 scrub_stripe_index_and_offset(logical, in scrub_setup_recheck_block()
1415 logical += sublen; in scrub_setup_recheck_block()
1450 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()
1691 sbio->logical + sbio->page_count * PAGE_SIZE != in scrub_add_page_to_wr_bio()
1692 spage->logical) { in scrub_add_page_to_wr_bio()
1883 if (sblock->pagev[0]->logical != btrfs_stack_header_bytenr(h)) in scrub_checksum_tree_block()
1948 if (sblock->pagev[0]->logical != btrfs_super_bytenr(s)) in scrub_checksum_super()
2077 sbio->logical = spage->logical; in scrub_add_page_to_rd_bio()
2094 sbio->logical + sbio->page_count * PAGE_SIZE != in scrub_add_page_to_rd_bio()
2095 spage->logical || in scrub_add_page_to_rd_bio()
2137 u64 logical; in scrub_missing_raid56_worker() local
2140 logical = sblock->pagev[0]->logical; in scrub_missing_raid56_worker()
2152 logical, rcu_str_deref(dev->name)); in scrub_missing_raid56_worker()
2159 logical, rcu_str_deref(dev->name)); in scrub_missing_raid56_worker()
2181 u64 logical = sblock->pagev[0]->logical; in scrub_missing_raid56_pages() local
2188 ret = btrfs_map_sblock(fs_info, REQ_GET_READ_MIRRORS, logical, &length, in scrub_missing_raid56_pages()
2208 bio->bi_iter.bi_sector = logical >> 9; in scrub_missing_raid56_pages()
2219 raid56_add_scrub_pages(rbio, spage->page, spage->logical); in scrub_missing_raid56_pages()
2238 static int scrub_pages(struct scrub_ctx *sctx, u64 logical, u64 len, in scrub_pages() argument
2280 spage->logical = logical; in scrub_pages()
2295 logical += l; in scrub_pages()
2440 u64 start = sblock->pagev[0]->logical; in scrub_block_complete()
2441 u64 end = sblock->pagev[sblock->page_count - 1]->logical + in scrub_block_complete()
2449 static int scrub_find_csum(struct scrub_ctx *sctx, u64 logical, u8 *csum) in scrub_find_csum() argument
2458 if (sum->bytenr > logical) in scrub_find_csum()
2460 if (sum->bytenr + sum->len > logical) in scrub_find_csum()
2471 index = ((u32)(logical - sum->bytenr)) / sctx->sectorsize; in scrub_find_csum()
2482 static int scrub_extent(struct scrub_ctx *sctx, u64 logical, u64 len, in scrub_extent() argument
2513 have_csum = scrub_find_csum(sctx, logical, csum); in scrub_extent()
2517 ret = copy_nocow_pages(sctx, logical, l, in scrub_extent()
2523 ret = scrub_pages(sctx, logical, l, physical, dev, flags, gen, in scrub_extent()
2530 logical += l; in scrub_extent()
2538 u64 logical, u64 len, in scrub_pages_for_parity() argument
2586 spage->logical = logical; in scrub_pages_for_parity()
2600 logical += l; in scrub_pages_for_parity()
2622 u64 logical, u64 len, in scrub_extent_for_parity() argument
2632 scrub_parity_mark_sectors_error(sparity, logical, len); in scrub_extent_for_parity()
2651 have_csum = scrub_find_csum(sctx, logical, csum); in scrub_extent_for_parity()
2655 ret = scrub_pages_for_parity(sparity, logical, l, physical, dev, in scrub_extent_for_parity()
2662 logical += l; in scrub_extent_for_parity()
2797 raid56_add_scrub_pages(rbio, spage->page, spage->logical); in scrub_parity_check_and_repair()
3075 u64 logical; in scrub_stripe() local
3147 logical = base + offset; in scrub_stripe()
3154 logic_end = logical + increment * nstripes; in scrub_stripe()
3161 key_start.objectid = logical; in scrub_stripe()
3171 key_start.offset = logical; in scrub_stripe()
3220 &logical, in scrub_stripe()
3222 logical += base; in scrub_stripe()
3240 key.objectid = logical; in scrub_stripe()
3289 if (key.objectid + bytes <= logical) in scrub_stripe()
3292 if (key.objectid >= logical + map->stripe_len) { in scrub_stripe()
3305 (key.objectid < logical || in scrub_stripe()
3307 logical + map->stripe_len)) { in scrub_stripe()
3311 key.objectid, logical); in scrub_stripe()
3325 if (extent_logical < logical) { in scrub_stripe()
3326 extent_len -= logical - extent_logical; in scrub_stripe()
3327 extent_logical = logical; in scrub_stripe()
3330 logical + map->stripe_len) { in scrub_stripe()
3331 extent_len = logical + map->stripe_len - in scrub_stripe()
3335 extent_physical = extent_logical - logical + physical; in scrub_stripe()
3355 extent_logical - logical + physical); in scrub_stripe()
3372 num, map, &logical, in scrub_stripe()
3374 logical += base; in scrub_stripe()
3390 logical += increment; in scrub_stripe()
3392 if (logical < key.objectid + bytes) { in scrub_stripe()
3407 logical += increment; in scrub_stripe()
4071 static int copy_nocow_pages(struct scrub_ctx *sctx, u64 logical, u64 len, in copy_nocow_pages() argument
4088 nocow_ctx->logical = logical; in copy_nocow_pages()
4123 u64 logical = nocow_ctx->logical; in copy_nocow_pages_worker() local
4152 ret = iterate_inodes_from_logical(logical, fs_info, path, in copy_nocow_pages_worker()
4157 logical, physical_for_dev_replace, len, mirror_num, in copy_nocow_pages_worker()
4203 u64 logical) in check_extent_to_block() argument
4232 if (em->block_start > logical || in check_extent_to_block()
4233 em->block_start + em->block_len < logical + len) { in check_extent_to_block()
4289 nocow_ctx_logical = nocow_ctx->logical; in copy_nocow_pages_for_inode()