btrfs-progs: print-tree: Enhance warning on tree block level mismatch and error handling
authorQu Wenruo <wqu@suse.com>
Thu, 15 Mar 2018 04:48:15 +0000 (12:48 +0800)
committerDavid Sterba <dsterba@suse.com>
Fri, 30 Mar 2018 20:15:54 +0000 (22:15 +0200)
commitf37ae8d275c2f988c9fc967f8272648fb0118d3d
tree64985c4f80eb2346cad78f953a5d6e9abf3c314a
parent0dc758d89e8ca57276d224a7efad608281dae5a5
btrfs-progs: print-tree: Enhance warning on tree block level mismatch and error handling

This patch enhances the tree block level mismatch by the following
methods:

1) Merge same warning branches into one
   We had two branches showing the same message, and their condition
   is also the same. Merge them

2) Only skip bad slot
   The old code skipped all the remaining slots, here we just skip one
   slot to output as many correct tree blocks as possible.

3) Enhance warning message
   Output the parent bytenr and expected and wrong level, so we don't
   need to refer to stdout to get which tree block is corrupted.

Signed-off-by: Qu Wenruo <wqu@suse.com>
Signed-off-by: David Sterba <dsterba@suse.com>
print-tree.c