Lines Matching refs:parent_index
654 static int split_one_into_two(struct shadow_spine *s, unsigned int parent_index,
683 r = insert_at(sizeof(__le64), pn, parent_index + 1,
737 static int split_two_into_three(struct shadow_spine *s, unsigned int parent_index,
749 if (parent_index == 0) {
752 r = shadow_child(s->info, vt, pn, parent_index + 1, &right);
756 middle_index = parent_index;
758 r = shadow_child(s->info, vt, pn, parent_index - 1, &left);
916 unsigned int parent_index, uint64_t key)
922 r = shadow_child(s->info, vt, parent, parent_index - 1, &sib);
929 *key_ptr(parent, parent_index) = right->keys[0];
945 unsigned int parent_index, uint64_t key)
951 r = shadow_child(s->info, vt, parent, parent_index + 1, &sib);
958 *key_ptr(parent, parent_index + 1) = right->keys[0];
1002 unsigned int parent_index, uint64_t key)
1011 if (parent_index > 0) {
1012 dm_block_t left_b = value64(parent, parent_index - 1);
1024 return rebalance_left(s, vt, parent_index, key);
1029 if (parent_index < (nr_parent - 1)) {
1030 dm_block_t right_b = value64(parent, parent_index + 1);
1042 return rebalance_right(s, vt, parent_index, key);
1053 (parent_index == 0) || (parent_index + 1 == nr_parent)) {
1054 return split_one_into_two(s, parent_index, vt, key);
1056 return split_two_into_three(s, parent_index, vt, key);