Lines Matching refs:index
111 static void delete_at(struct btree_node *n, unsigned index) in delete_at() argument
114 unsigned nr_to_copy = nr_entries - (index + 1); in delete_at()
116 BUG_ON(index >= nr_entries); in delete_at()
119 memmove(key_ptr(n, index), in delete_at()
120 key_ptr(n, index + 1), in delete_at()
123 memmove(value_ptr(n, index), in delete_at()
124 value_ptr(n, index + 1), in delete_at()
137 unsigned index; member
144 unsigned index, struct child *result) in init_child() argument
149 result->index = index; in init_child()
150 root = value64(parent, index); in init_child()
162 *((__le64 *) value_ptr(parent, index)) = in init_child()
214 delete_at(parent, r->index); in __rebalance2()
227 *key_ptr(parent, r->index) = right->keys[0]; in __rebalance2()
282 *key_ptr(parent, r->index) = right->keys[0]; in delete_center_node()
284 delete_at(parent, c->index); in delete_center_node()
285 r->index--; in delete_center_node()
337 *key_ptr(parent, c->index) = center->keys[0]; in redistribute3()
338 *key_ptr(parent, r->index) = right->keys[0]; in redistribute3()
445 static int do_leaf(struct btree_node *n, uint64_t key, unsigned *index) in do_leaf() argument
454 *index = i; in do_leaf()
465 uint64_t key, unsigned *index) in remove_raw() argument
467 int i = *index, r; in remove_raw()
489 return do_leaf(n, key, index); in remove_raw()
497 return do_leaf(n, key, index); in remove_raw()
516 int index = 0, r = 0; in dm_btree_remove() local
527 root, keys[level], (unsigned *)&index); in dm_btree_remove()
533 root = value64(n, index); in dm_btree_remove()
537 BUG_ON(index < 0 || index >= le32_to_cpu(n->header.nr_entries)); in dm_btree_remove()
541 value_ptr(n, index)); in dm_btree_remove()
543 delete_at(n, index); in dm_btree_remove()
557 uint64_t key, int *index) in remove_nearest() argument
559 int i = *index, r; in remove_nearest()
581 *index = lower_bound(n, key); in remove_nearest()
591 *index = lower_bound(n, key); in remove_nearest()
613 int index = 0, r = 0; in remove_one() local
623 root, keys[level], (unsigned *) &index); in remove_one()
628 root = value64(n, index); in remove_one()
632 root, keys[last_level], &index); in remove_one()
638 if (index < 0) in remove_one()
639 index = 0; in remove_one()
641 if (index >= le32_to_cpu(n->header.nr_entries)) { in remove_one()
646 k = le64_to_cpu(n->keys[index]); in remove_one()
650 value_ptr(n, index)); in remove_one()
652 delete_at(n, index); in remove_one()