Commit de924abb authored by Kent Overstreet's avatar Kent Overstreet Committed by Kent Overstreet

bcachefs: Fix error handling in bch2_trans_extent_merging

The back merging case wasn't returning errors correctly.
Signed-off-by: default avatarKent Overstreet <kent.overstreet@gmail.com>
parent 4db65027
...@@ -1058,7 +1058,7 @@ static int bch2_trans_update_extent(struct btree_trans *trans, ...@@ -1058,7 +1058,7 @@ static int bch2_trans_update_extent(struct btree_trans *trans,
if (bch2_bkey_maybe_mergable(k.k, &insert->k)) { if (bch2_bkey_maybe_mergable(k.k, &insert->k)) {
ret = extent_front_merge(trans, &iter, k, &insert, flags); ret = extent_front_merge(trans, &iter, k, &insert, flags);
if (ret) if (ret)
goto out; goto err;
} }
goto next; goto next;
...@@ -1178,8 +1178,11 @@ static int bch2_trans_update_extent(struct btree_trans *trans, ...@@ -1178,8 +1178,11 @@ static int bch2_trans_update_extent(struct btree_trans *trans,
goto out; goto out;
} }
if (bch2_bkey_maybe_mergable(&insert->k, k.k)) if (bch2_bkey_maybe_mergable(&insert->k, k.k)) {
extent_back_merge(trans, &iter, insert, k); ret = extent_back_merge(trans, &iter, insert, k);
if (ret)
goto err;
}
out: out:
if (!bkey_deleted(&insert->k)) { if (!bkey_deleted(&insert->k)) {
/* /*
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment