Lines Matching full:insert
34 struct bkey_i **insert, in extent_front_merge() argument
46 if (!bch2_bkey_merge(c, bkey_i_to_s(update), bkey_i_to_s_c(*insert))) in extent_front_merge()
50 bch2_key_has_snapshot_overwrites(trans, iter->btree_id, (*insert)->k.p); in extent_front_merge()
60 *insert = update; in extent_front_merge()
66 struct bkey_i *insert, in extent_back_merge() argument
72 ret = bch2_key_has_snapshot_overwrites(trans, iter->btree_id, insert->k.p) ?: in extent_back_merge()
79 bch2_bkey_merge(c, bkey_i_to_s(insert), k); in extent_back_merge()
281 struct bkey_i *insert, in bch2_trans_update_extent() argument
289 bch2_trans_iter_init(trans, &iter, btree_id, bkey_start_pos(&insert->k), in bch2_trans_update_extent()
293 k = bch2_btree_iter_peek_upto(&iter, POS(insert->k.p.inode, U64_MAX)); in bch2_trans_update_extent()
299 if (bkey_eq(k.k->p, bkey_start_pos(&insert->k))) { in bch2_trans_update_extent()
300 if (bch2_bkey_maybe_mergable(k.k, &insert->k)) { in bch2_trans_update_extent()
301 ret = extent_front_merge(trans, &iter, k, &insert, flags); in bch2_trans_update_extent()
309 while (bkey_gt(insert->k.p, bkey_start_pos(k.k))) { in bch2_trans_update_extent()
310 bool done = bkey_lt(insert->k.p, k.k->p); in bch2_trans_update_extent()
312 ret = bch2_trans_update_extent_overwrite(trans, &iter, flags, k, bkey_i_to_s_c(insert)); in bch2_trans_update_extent()
320 k = bch2_btree_iter_peek_upto(&iter, POS(insert->k.p.inode, U64_MAX)); in bch2_trans_update_extent()
327 if (bch2_bkey_maybe_mergable(&insert->k, k.k)) { in bch2_trans_update_extent()
328 ret = extent_back_merge(trans, &iter, insert, k); in bch2_trans_update_extent()
333 if (!bkey_deleted(&insert->k)) in bch2_trans_update_extent()
334 ret = bch2_btree_insert_nonextent(trans, btree_id, insert, flags); in bch2_trans_update_extent()
359 * The old key in the insert entry might actually refer to an existing in flush_new_cached_update()
649 * bch2_btree_insert - insert keys into the extent btree
651 * @id: btree to insert into
652 * @k: key to insert