Lines Matching refs:pivots

699 mas_safe_pivot(const struct ma_state *mas, unsigned long *pivots,  in mas_safe_pivot()  argument
705 return pivots[piv]; in mas_safe_pivot()
717 mas_safe_min(struct ma_state *mas, unsigned long *pivots, unsigned char offset) in mas_safe_min() argument
720 return pivots[offset - 1] + 1; in mas_safe_min()
889 unsigned long *pivots; in mt_clear_meta() local
895 pivots = mn->mr64.pivot; in mt_clear_meta()
896 if (unlikely(pivots[MAPLE_RANGE64_SLOTS - 2])) { in mt_clear_meta()
1008 unsigned long *pivots; in mas_descend() local
1014 pivots = ma_pivots(node, type); in mas_descend()
1018 mas->min = pivots[mas->offset - 1] + 1; in mas_descend()
1019 mas->max = mas_safe_pivot(mas, pivots, mas->offset, type); in mas_descend()
1059 unsigned long *pivots; in mas_ascend() local
1104 pivots = ma_pivots(a_node, a_type); in mas_ascend()
1111 min = pivots[a_slot - 1] + 1; in mas_ascend()
1116 max = pivots[a_slot]; in mas_ascend()
1407 enum maple_type type, unsigned long *pivots, unsigned long max) in ma_data_end() argument
1411 if (!pivots) in ma_data_end()
1418 if (likely(!pivots[offset])) in ma_data_end()
1421 if (likely(pivots[offset] == max)) in ma_data_end()
1441 unsigned long *pivots; in mas_data_end() local
1448 pivots = ma_pivots(node, type); in mas_data_end()
1453 if (likely(!pivots[offset])) in mas_data_end()
1456 if (likely(pivots[offset] == mas->max)) in mas_data_end()
1473 unsigned long *pivots; in mas_leaf_max_gap() local
1502 pivots = ma_pivots(mn, mt); in mas_leaf_max_gap()
1504 max_gap = pivots[0] - mas->min + 1; in mas_leaf_max_gap()
1511 max_piv = ma_data_end(mn, mt, pivots, mas->max) - 1; in mas_leaf_max_gap()
1517 gap = ULONG_MAX - pivots[max_piv]; in mas_leaf_max_gap()
1521 if (max_gap > pivots[max_piv] - mas->min) in mas_leaf_max_gap()
1530 pstart = pivots[i - 1]; in mas_leaf_max_gap()
1531 gap = pivots[i] - pstart; in mas_leaf_max_gap()
1689 unsigned long *pivots = ma_pivots(node, type); in mas_adopt_children() local
1693 offset = ma_data_end(node, type, pivots, mas->max); in mas_adopt_children()
1754 unsigned long *pivots; in mas_find_child() local
1762 pivots = ma_pivots(node, mt); in mas_find_child()
1763 end = ma_data_end(node, mt, pivots, mas->max); in mas_find_child()
1928 unsigned long *pivots, *gaps; in mas_mab_cp() local
1934 pivots = ma_pivots(node, mt); in mas_mab_cp()
1936 b_node->pivot[j] = pivots[i++]; in mas_mab_cp()
1944 b_node->pivot[j] = pivots[i]; in mas_mab_cp()
1953 b_node->pivot[j] = mas_safe_pivot(mas, pivots, i, mt); in mas_mab_cp()
1995 unsigned long *pivots = ma_pivots(node, mt); in mab_mas_cp() local
2002 if (!pivots[mt_pivots[mt] - 1]) in mab_mas_cp()
2007 pivots[j++] = b_node->pivot[i++]; in mab_mas_cp()
2104 piv = mas_safe_pivot(mas, wr_mas->pivots, offset_end, wr_mas->type); in mas_store_b_node()
2217 wr_mas->pivots = ma_pivots(wr_mas->node, wr_mas->type); in mas_wr_node_walk()
2219 wr_mas->pivots, mas->max); in mas_wr_node_walk()
2222 while (offset < count && mas->index > wr_mas->pivots[offset]) in mas_wr_node_walk()
2225 wr_mas->r_max = offset < count ? wr_mas->pivots[offset] : mas->max; in mas_wr_node_walk()
2226 wr_mas->r_min = mas_safe_min(mas, wr_mas->pivots, offset); in mas_wr_node_walk()
2752 unsigned long *pivots; in mtree_range_walk() local
2769 pivots = ma_pivots(node, type); in mtree_range_walk()
2770 end = ma_data_end(node, type, pivots, max); in mtree_range_walk()
2773 if (pivots[0] >= mas->index) { in mtree_range_walk()
2775 max = pivots[0]; in mtree_range_walk()
2781 if (pivots[offset] >= mas->index) { in mtree_range_walk()
2782 max = pivots[offset]; in mtree_range_walk()
2788 min = pivots[offset - 1] + 1; in mtree_range_walk()
3409 unsigned long *pivots; in mas_root_expand() local
3413 pivots = ma_pivots(node, type); in mas_root_expand()
3425 pivots[slot++] = mas->index - 1; in mas_root_expand()
3430 pivots[slot] = mas->last; in mas_root_expand()
3432 pivots[++slot] = ULONG_MAX; in mas_root_expand()
3570 l_mas->index = l_wr_mas->pivots[l_slot - 2] + 1; in mas_extend_spanning_null()
3584 r_mas->last = mas_safe_pivot(r_mas, r_wr_mas->pivots, in mas_extend_spanning_null()
3615 unsigned long *pivots; in mtree_lookup_walk() local
3627 pivots = ma_pivots(node, type); in mtree_lookup_walk()
3631 if (pivots[offset] >= mas->index) in mtree_lookup_walk()
3663 unsigned long *pivots; in mas_new_root() local
3674 pivots = ma_pivots(node, type); in mas_new_root()
3680 pivots[0] = mas->last; in mas_new_root()
3819 memcpy(dst_pivots, wr_mas->pivots, sizeof(unsigned long) * mas->offset); in mas_wr_node_store()
3845 memcpy(dst_pivots + dst_offset, wr_mas->pivots + offset_end, in mas_wr_node_store()
3885 wr_mas->pivots[offset] = mas->last; in mas_wr_slot_store()
3889 wr_mas->pivots[offset] = mas->index - 1; in mas_wr_slot_store()
3899 wr_mas->pivots[offset] = mas->index - 1; in mas_wr_slot_store()
3900 wr_mas->pivots[offset + 1] = mas->last; in mas_wr_slot_store()
3933 mas->last = wr_mas->pivots[wr_mas->offset_end]; in mas_wr_extend_null()
3947 mas_safe_min(mas, wr_mas->pivots, mas->offset); in mas_wr_extend_null()
3948 wr_mas->r_max = wr_mas->pivots[mas->offset]; in mas_wr_extend_null()
3956 (wr_mas->mas->last > wr_mas->pivots[wr_mas->offset_end])) in mas_wr_end_piv()
3960 wr_mas->end_piv = wr_mas->pivots[wr_mas->offset_end]; in mas_wr_end_piv()
3997 wr_mas->pivots[new_end] = wr_mas->pivots[end]; in mas_wr_append()
4006 wr_mas->pivots[end] = mas->index - 1; in mas_wr_append()
4011 wr_mas->pivots[end] = mas->last; in mas_wr_append()
4017 wr_mas->pivots[end + 1] = mas->last; in mas_wr_append()
4019 wr_mas->pivots[end] = mas->index - 1; in mas_wr_append()
4418 unsigned long *pivots; in mas_prev_node() local
4453 pivots = ma_pivots(node, mt); in mas_prev_node()
4454 offset = ma_data_end(node, mt, pivots, max); in mas_prev_node()
4461 pivots = ma_pivots(node, mt); in mas_prev_node()
4466 mas->min = pivots[offset - 1] + 1; in mas_prev_node()
4498 unsigned long *pivots; in mas_prev_slot() local
4505 pivots = ma_pivots(node, type); in mas_prev_slot()
4510 pivot = mas_safe_min(mas, pivots, mas->offset); in mas_prev_slot()
4523 mas->index = mas_safe_min(mas, pivots, mas->offset); in mas_prev_slot()
4539 pivots = ma_pivots(node, type); in mas_prev_slot()
4540 mas->index = pivots[mas->offset - 1] + 1; in mas_prev_slot()
4582 unsigned long *pivots; in mas_next_node() local
4606 pivots = ma_pivots(node, mt); in mas_next_node()
4607 node_end = ma_data_end(node, mt, pivots, mas->max); in mas_next_node()
4634 pivots = ma_pivots(node, mt); in mas_next_node()
4636 mas->max = mas_safe_pivot(mas, pivots, mas->offset, mt); in mas_next_node()
4639 pivots = ma_pivots(tmp, mt); in mas_next_node()
4640 mas->end = ma_data_end(tmp, mt, pivots, mas->max); in mas_next_node()
4668 unsigned long *pivots; in mas_next_slot() local
4678 pivots = ma_pivots(node, type); in mas_next_slot()
4684 pivot = pivots[mas->offset]; in mas_next_slot()
4698 mas->index = pivots[mas->offset] + 1; in mas_next_slot()
4702 mas->last = pivots[mas->offset]; in mas_next_slot()
4723 pivots = ma_pivots(node, type); in mas_next_slot()
4724 mas->last = pivots[0]; in mas_next_slot()
4786 unsigned long *pivots, *gaps; in mas_rev_awalk() local
4801 pivots = ma_pivots(node, type); in mas_rev_awalk()
4805 min = mas_safe_min(mas, pivots, offset); in mas_rev_awalk()
4808 min = mas_safe_min(mas, pivots, --offset); in mas_rev_awalk()
4810 max = mas_safe_pivot(mas, pivots, offset, type); in mas_rev_awalk()
4828 max = pivots[offset]; in mas_rev_awalk()
4829 min = mas_safe_min(mas, pivots, offset); in mas_rev_awalk()
4839 min = mas_safe_min(mas, pivots, offset); in mas_rev_awalk()
4873 unsigned long *gaps, *pivots; in mas_anode_descend() local
4884 pivots = ma_pivots(node, type); in mas_anode_descend()
4888 min = mas_safe_min(mas, pivots, offset); in mas_anode_descend()
4889 data_end = ma_data_end(node, type, pivots, mas->max); in mas_anode_descend()
4891 pivot = mas_safe_pivot(mas, pivots, offset, type); in mas_anode_descend()
5087 unsigned long *pivots; in mas_empty_area() local
5122 pivots = ma_pivots(node, mt); in mas_empty_area()
5123 min = mas_safe_min(mas, pivots, offset); in mas_empty_area()
5127 mas->end = ma_data_end(node, mt, pivots, mas->max); in mas_empty_area()
7310 unsigned long *pivots = ma_pivots(node, mt); in mas_validate_gaps() local
7328 p_end = mas_safe_pivot(mas, pivots, i, mt); in mas_validate_gaps()
7431 unsigned long *pivots = ma_pivots(mte_to_node(mas->node), type); in mas_validate_child_slot() local
7461 if (i < mt_pivots[type] && pivots[i] == mas->max) in mas_validate_child_slot()
7477 unsigned long *pivots = ma_pivots(mas_mn(mas), type); in mas_validate_limits() local
7482 piv = mas_safe_pivot(mas, pivots, i, type); in mas_validate_limits()
7527 unsigned long piv = pivots[i]; in mas_validate_limits()