summaryrefslogtreecommitdiff
path: root/debug-tree.c
diff options
context:
space:
mode:
authorMiao Xie <miaox@cn.fujitsu.com>2010-07-13 09:18:04 +0000
committerChris Mason <chris.mason@oracle.com>2011-10-25 09:18:31 -0400
commitb4d668ee6bcf93f097507df6d76fd0fca7d3888a (patch)
tree14f5491a7bfad1ffdf5cddea52ea67f604a227b6 /debug-tree.c
parent4e64e05c6b8d9a1ed30bb6eda30ef8e93c6af260 (diff)
btrfs-progs: fix wrong extent buffer size when reading tree block
the root extent buffer of a tree may not be a leaf, so we must get the right size by its level when reading it. Signed-off-by: Miao Xie <miaox@cn.fujitsu.com> Signed-off-by: Chris Mason <chris.mason@oracle.com>
Diffstat (limited to 'debug-tree.c')
-rw-r--r--debug-tree.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/debug-tree.c b/debug-tree.c
index 0525354b..99c12d68 100644
--- a/debug-tree.c
+++ b/debug-tree.c
@@ -212,7 +212,9 @@ again:
read_extent_buffer(leaf, &ri, offset, sizeof(ri));
buf = read_tree_block(tree_root_scan,
btrfs_root_bytenr(&ri),
- tree_root_scan->leafsize, 0);
+ btrfs_level_size(tree_root_scan,
+ btrfs_root_level(&ri)),
+ 0);
switch(found_key.objectid) {
case BTRFS_ROOT_TREE_OBJECTID:
if (!skip)