diff --git a/ctree.c b/ctree.c index 4f7e6d0e..0e2fe7f6 100644 --- a/ctree.c +++ b/ctree.c @@ -686,6 +686,9 @@ static int balance_level(struct btrfs_trans_handle *trans, /* promote the child to a root */ child = read_node_slot(root, mid, 0); BUG_ON(!child); + ret = btrfs_cow_block(trans, root, child, mid, 0, &child); + BUG_ON(ret); + root->node = child; path->nodes[level] = NULL; clean_tree_block(trans, root, mid);