btrfs-progs: dump-tree: skip tree-checker when dumpping tree blocks

Since commit c8593f65cbf3 ("btrfs-progs: sync tree-checker.[ch] from
kernel"), btrfs-progs can do the kernel level tree block checks, which
is not really sutiable for dump-tree.

Under a lot of cases, we're using dump-tree tool to debug to collect the
details from end users.
If it's a bitflip causing a rejection, we would be unable to determine
the cause.

So this patch would add OPEN_CTREE_SKIP_LEAF_ITEM_CHECKS for dump-tree.

Reviewed-by: Anand Jain <anand.jain@oracle.com>
Signed-off-by: Qu Wenruo <wqu@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
Qu Wenruo 2023-05-16 19:28:54 +08:00 committed by David Sterba
parent e7b79adf5a
commit 1f66936c83
1 changed files with 5 additions and 1 deletions

View File

@ -342,8 +342,12 @@ static int cmd_inspect_dump_tree(const struct cmd_struct *cmd,
* Use NO_BLOCK_GROUPS here could also speedup open_ctree() and allow us
* to inspect fs with corrupted extent tree blocks, and show as many good
* tree blocks as possible.
*
* And we want to avoid tree-checker, which can rejects the target tree
* block completely, while we may be debugging the problem.
*/
open_ctree_flags = OPEN_CTREE_PARTIAL | OPEN_CTREE_NO_BLOCK_GROUPS;
open_ctree_flags = OPEN_CTREE_PARTIAL | OPEN_CTREE_NO_BLOCK_GROUPS |
OPEN_CTREE_SKIP_LEAF_ITEM_CHECKS;
cache_tree_init(&block_root);
optind = 0;
while (1) {