diff options
author | Miao Xie <miaox@cn.fujitsu.com> | 2010-07-13 09:18:04 +0000 |
---|---|---|
committer | Chris Mason <chris.mason@oracle.com> | 2011-10-25 09:18:31 -0400 |
commit | b4d668ee6bcf93f097507df6d76fd0fca7d3888a (patch) | |
tree | 14f5491a7bfad1ffdf5cddea52ea67f604a227b6 /debug-tree.c | |
parent | 4e64e05c6b8d9a1ed30bb6eda30ef8e93c6af260 (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.c | 4 |
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) |