mirror of
https://github.com/torvalds/linux.git
synced 2026-05-21 13:27:57 +02:00
Btrfs: don't check nodes for extent items
The backref code was looking at nodes as well as leaves when we tried to populate extent item entries. This is not good, and although we go away with it for the most part because we'd skip where disk_bytenr != random_memory, sometimes random_memory would match and suddenly boom. This fixes that problem. Thanks, Signed-off-by: Josef Bacik <jbacik@fb.com> Signed-off-by: Chris Mason <clm@fb.com>
This commit is contained in:
parent
6fdef6d43c
commit
8a56457f5f
|
|
@ -988,11 +988,12 @@ static int find_parent_nodes(struct btrfs_trans_handle *trans,
|
|||
goto out;
|
||||
}
|
||||
if (ref->count && ref->parent) {
|
||||
if (extent_item_pos && !ref->inode_list) {
|
||||
if (extent_item_pos && !ref->inode_list &&
|
||||
ref->level == 0) {
|
||||
u32 bsz;
|
||||
struct extent_buffer *eb;
|
||||
bsz = btrfs_level_size(fs_info->extent_root,
|
||||
info_level);
|
||||
ref->level);
|
||||
eb = read_tree_block(fs_info->extent_root,
|
||||
ref->parent, bsz, 0);
|
||||
if (!eb || !extent_buffer_uptodate(eb)) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user