diff options
author | David Sterba <dsterba@suse.com> | 2016-08-26 12:53:31 +0200 |
---|---|---|
committer | David Sterba <dsterba@suse.com> | 2016-09-21 14:12:38 +0200 |
commit | 41fe00e1eb42a411d0eb353f081ae5780f0ed104 (patch) | |
tree | 4043c6a3d13528c4738c0982af47a4006470f02b | |
parent | 04b3bf1779ca97388115ccc5fd8016a2a9f3d12d (diff) |
btrfs-progs: dump-tree: improved error handling in cmd_inspect_dump_tree
Signed-off-by: David Sterba <dsterba@suse.com>
-rw-r--r-- | cmds-inspect-dump-tree.c | 10 |
1 files changed, 7 insertions, 3 deletions
diff --git a/cmds-inspect-dump-tree.c b/cmds-inspect-dump-tree.c index cfe7507c..fcc56343 100644 --- a/cmds-inspect-dump-tree.c +++ b/cmds-inspect-dump-tree.c @@ -390,7 +390,12 @@ again: key.objectid = 0; btrfs_set_key_type(&key, BTRFS_ROOT_ITEM_KEY); ret = btrfs_search_slot(NULL, tree_root_scan, &key, &path, 0, 0); - BUG_ON(ret < 0); + if (ret < 0) { + error("cannot read ROOT_ITEM from tree %llu: %s", + (unsigned long long)tree_root_scan->root_key.objectid, + strerror(-ret)); + goto close_root; + } while (1) { leaf = path.nodes[0]; slot = path.slots[0]; @@ -537,8 +542,7 @@ next: no_node: btrfs_release_path(&path); - if (tree_root_scan == info->tree_root && - info->log_root_tree) { + if (tree_root_scan == info->tree_root && info->log_root_tree) { tree_root_scan = info->log_root_tree; goto again; } |