Btrfs: properly check free space for tree balancing
btrfs_insert_empty_items takes the space needed by the btrfs_item structure into account when calculating the required free space. So the tree balancing code shouldn't add sizeof(struct btrfs_item) to the size when checking the free space. This patch removes these superfluous additions. Signed-off-by: Yan Zheng <zheng.yan@oracle.com>
This commit is contained in:
@ -374,13 +374,8 @@ insert:
|
||||
if (found_size > item_size) {
|
||||
btrfs_truncate_item(trans, root, path, item_size, 1);
|
||||
} else if (found_size < item_size) {
|
||||
ret = btrfs_del_item(trans, root,
|
||||
path);
|
||||
BUG_ON(ret);
|
||||
|
||||
btrfs_release_path(root, path);
|
||||
ret = btrfs_insert_empty_item(trans,
|
||||
root, path, key, item_size);
|
||||
ret = btrfs_extend_item(trans, root, path,
|
||||
item_size - found_size);
|
||||
BUG_ON(ret);
|
||||
}
|
||||
} else if (ret) {
|
||||
|
Reference in New Issue
Block a user