Btrfs: handle running extent ops with skinny metadata
Chris hit a bug where we weren't finding extent records when running extent ops. This is because we use the delayed_ref_head when running the extent op, which means we can't use the ->type checks to see if we are metadata. We also lose the level of the metadata we are working on. So to fix this we can just check the ->is_data section of the extent_op, and we can store the level of the buffer we were modifying in the extent_op. Thanks, Signed-off-by: Josef Bacik <jbacik@fusionio.com>
This commit is contained in:
parent
73e1e61fb8
commit
b1c79e0947
4 changed files with 12 additions and 10 deletions
|
@ -60,6 +60,7 @@ struct btrfs_delayed_ref_node {
|
|||
struct btrfs_delayed_extent_op {
|
||||
struct btrfs_disk_key key;
|
||||
u64 flags_to_set;
|
||||
int level;
|
||||
unsigned int update_key:1;
|
||||
unsigned int update_flags:1;
|
||||
unsigned int is_data:1;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue