|
@@ -988,11 +988,12 @@ again:
|
|
goto out;
|
|
goto out;
|
|
}
|
|
}
|
|
if (ref->count && ref->parent) {
|
|
if (ref->count && ref->parent) {
|
|
- if (extent_item_pos && !ref->inode_list) {
|
|
|
|
|
|
+ if (extent_item_pos && !ref->inode_list &&
|
|
|
|
+ ref->level == 0) {
|
|
u32 bsz;
|
|
u32 bsz;
|
|
struct extent_buffer *eb;
|
|
struct extent_buffer *eb;
|
|
bsz = btrfs_level_size(fs_info->extent_root,
|
|
bsz = btrfs_level_size(fs_info->extent_root,
|
|
- info_level);
|
|
|
|
|
|
+ ref->level);
|
|
eb = read_tree_block(fs_info->extent_root,
|
|
eb = read_tree_block(fs_info->extent_root,
|
|
ref->parent, bsz, 0);
|
|
ref->parent, bsz, 0);
|
|
if (!eb || !extent_buffer_uptodate(eb)) {
|
|
if (!eb || !extent_buffer_uptodate(eb)) {
|