Btrfs: add missing extent state caching calls
When we didn't find a matching extent state, we inserted a new one but didn't cache it in the **cached_state parameter, which makes a subsequent call do a tree lookup to get it. Signed-off-by: Filipe David Borba Manana <fdmanana@gmail.com> Signed-off-by: Josef Bacik <jbacik@fb.com> Signed-off-by: Chris Mason <clm@fb.com>
This commit is contained in:
parent
32193c147f
commit
c42ac0bc95
1 changed files with 3 additions and 1 deletions
|
@ -817,6 +817,7 @@ __set_extent_bit(struct extent_io_tree *tree, u64 start, u64 end,
|
|||
if (err)
|
||||
extent_io_tree_panic(tree, err);
|
||||
|
||||
cache_state(prealloc, cached_state);
|
||||
prealloc = NULL;
|
||||
goto out;
|
||||
}
|
||||
|
@ -1040,9 +1041,10 @@ int convert_extent_bit(struct extent_io_tree *tree, u64 start, u64 end,
|
|||
goto out;
|
||||
}
|
||||
err = insert_state(tree, prealloc, start, end, &bits);
|
||||
prealloc = NULL;
|
||||
if (err)
|
||||
extent_io_tree_panic(tree, err);
|
||||
cache_state(prealloc, cached_state);
|
||||
prealloc = NULL;
|
||||
goto out;
|
||||
}
|
||||
state = rb_entry(node, struct extent_state, rb_node);
|
||||
|
|
Loading…
Reference in a new issue