• Home
  • Raw
  • Download

Lines Matching refs:type

133 	enum maple_type type;  member
227 static __always_inline bool ma_is_dense(const enum maple_type type) in ma_is_dense() argument
229 return type < maple_leaf_64; in ma_is_dense()
232 static __always_inline bool ma_is_leaf(const enum maple_type type) in ma_is_leaf() argument
234 return type < maple_range_64; in ma_is_leaf()
335 enum maple_type type) in mt_mk_node() argument
338 (type << MAPLE_ENODE_TYPE_SHIFT) | MAPLE_ENODE_NULL); in mt_mk_node()
491 unsigned long type; in mas_set_parent() local
501 type = MAPLE_PARENT_RANGE64; in mas_set_parent()
506 shift = type = 0; in mas_set_parent()
511 val |= (slot << shift) | type; in mas_set_parent()
653 enum maple_type type) in ma_pivots() argument
655 switch (type) { in ma_pivots()
675 enum maple_type type) in ma_gaps() argument
677 switch (type) { in ma_gaps()
700 unsigned char piv, enum maple_type type) in mas_safe_pivot() argument
702 if (piv >= mt_pivots[type]) in mas_safe_pivot()
735 enum maple_type type = mte_node_type(mn); in mte_set_pivot() local
737 BUG_ON(piv >= mt_pivots[type]); in mte_set_pivot()
738 switch (type) { in mte_set_pivot()
886 enum maple_type type) in mt_clear_meta() argument
893 switch (type) { in mt_clear_meta()
906 meta = ma_meta(mn, type); in mt_clear_meta()
1007 enum maple_type type; in mas_descend() local
1013 type = mte_node_type(mas->node); in mas_descend()
1014 pivots = ma_pivots(node, type); in mas_descend()
1015 slots = ma_slots(node, type); in mas_descend()
1019 mas->max = mas_safe_pivot(mas, pivots, mas->offset, type); in mas_descend()
1407 enum maple_type type, unsigned long *pivots, unsigned long max) in ma_data_end() argument
1414 if (type == maple_arange_64) in ma_data_end()
1415 return ma_meta_end(node, type); in ma_data_end()
1417 offset = mt_pivots[type] - 1; in ma_data_end()
1419 return ma_meta_end(node, type); in ma_data_end()
1424 return mt_pivots[type]; in ma_data_end()
1438 enum maple_type type; in mas_data_end() local
1443 type = mte_node_type(mas->node); in mas_data_end()
1445 if (type == maple_arange_64) in mas_data_end()
1446 return ma_meta_end(node, type); in mas_data_end()
1448 pivots = ma_pivots(node, type); in mas_data_end()
1452 offset = mt_pivots[type] - 1; in mas_data_end()
1454 return ma_meta_end(node, type); in mas_data_end()
1459 return mt_pivots[type]; in mas_data_end()
1686 enum maple_type type = mte_node_type(parent); in mas_adopt_children() local
1688 void __rcu **slots = ma_slots(node, type); in mas_adopt_children()
1689 unsigned long *pivots = ma_pivots(node, type); in mas_adopt_children()
1693 offset = ma_data_end(node, type, pivots, mas->max); in mas_adopt_children()
1791 if (b_node->type == maple_arange_64) in mab_shift_right()
1834 (b_node->b_end - split) > (mt_min_slots[b_node->type])) in mab_no_null_split()
1856 unsigned char slot_count = mt_slots[bn->type]; in mab_calc_split()
1866 split = b_end - mt_min_slots[bn->type]; in mab_calc_split()
1868 if (!ma_is_leaf(bn->type)) in mab_calc_split()
2064 b_node->type = wr_mas->type; in mas_store_b_node()
2093 piv = mas_safe_pivot(mas, wr_mas->pivots, offset_end, wr_mas->type); in mas_store_b_node()
2096 mas_bulk_rebalance(mas, b_node->b_end, wr_mas->type); in mas_store_b_node()
2199 if (unlikely(ma_is_dense(wr_mas->type))) { in mas_wr_node_walk()
2206 wr_mas->pivots = ma_pivots(wr_mas->node, wr_mas->type); in mas_wr_node_walk()
2207 count = mas->end = ma_data_end(wr_mas->node, wr_mas->type, in mas_wr_node_walk()
2315 wr_mas.type = mte_node_type(mast->orig_r->node); in mast_ascend()
2321 wr_mas.type = mte_node_type(mast->orig_l->node); in mast_ascend()
2324 mast->bn->type = wr_mas.type; in mast_ascend()
2340 return mt_mk_node(ma_mnode_ptr(mas_pop_node(mas)), b_node->type); in mas_new_ma_node()
2361 unsigned char slot_count = mt_slots[b_node->type]; in mas_mab_to_node()
2745 enum maple_type type; in mtree_range_walk() local
2757 type = mte_node_type(next); in mtree_range_walk()
2758 pivots = ma_pivots(node, type); in mtree_range_walk()
2759 end = ma_data_end(node, type, pivots, max); in mtree_range_walk()
2779 slots = ma_slots(node, type); in mtree_range_walk()
2783 } while (!ma_is_leaf(type)); in mtree_range_walk()
2838 unlikely(mast->bn->b_end <= mt_min_slots[mast->bn->type])) in mas_spanning_rebalance()
2856 mast->bn->type = mte_node_type(mast->orig_l->node); in mas_spanning_rebalance()
2868 mast->bn->type = mte_node_type(left); in mas_spanning_rebalance()
2906 mab_mas_cp(mast->bn, 0, mt_slots[mast->bn->type] - 1, &l_mas, true); in mas_spanning_rebalance()
2967 mast.bn->type = mte_node_type(mas->node); in mas_rebalance()
3119 mast->bn->type = maple_arange_64; in mas_split_final_node()
3121 mast->bn->type = maple_range_64; in mas_split_final_node()
3134 mab_mas_cp(mast->bn, 0, mt_slots[mast->bn->type] - 1, mast->l, true); in mas_split_final_node()
3178 mast->bn->type = mte_node_type(mas->node); in mast_fill_bnode()
3240 if (ma_is_leaf(mast->bn->type)) in mas_push_data()
3260 split = mt_slots[mast->bn->type] - 2; in mas_push_data()
3272 split = mab_no_null_split(mast->bn, split, mt_slots[mast->bn->type]); in mas_push_data()
3327 if (mt_slots[b_node->type] > b_node->b_end) { in mas_split()
3377 enum store_type type = wr_mas->mas->store_type; in mas_commit_b_node() local
3379 WARN_ON_ONCE(type != wr_rebalance && type != wr_split_store); in mas_commit_b_node()
3381 if (type == wr_rebalance) in mas_commit_b_node()
3395 enum maple_type type = maple_leaf_64; in mas_root_expand() local
3402 pivots = ma_pivots(node, type); in mas_root_expand()
3403 slots = ma_slots(node, type); in mas_root_expand()
3405 mas->node = mt_mk_node(node, type); in mas_root_expand()
3468 enum maple_type type = wr_mas->type; in mas_is_span_wr() local
3475 if (ma_is_leaf(type)) { in mas_is_span_wr()
3496 wr_mas->type = mte_node_type(wr_mas->mas->node); in mas_wr_walk_descend()
3498 wr_mas->slots = ma_slots(wr_mas->node, wr_mas->type); in mas_wr_walk_descend()
3528 if (ma_is_leaf(wr_mas->type)) in mas_wr_walk()
3545 if (ma_is_leaf(wr_mas->type)) in mas_wr_walk_index()
3585 r_wr_mas->type, r_mas->offset + 1); in mas_extend_spanning_null()
3619 enum maple_type type; in mtree_lookup_walk() local
3626 type = mte_node_type(next); in mtree_lookup_walk()
3627 pivots = ma_pivots(node, type); in mtree_lookup_walk()
3628 end = mt_pivots[type]; in mtree_lookup_walk()
3635 slots = ma_slots(node, type); in mtree_lookup_walk()
3639 } while (!ma_is_leaf(type)); in mtree_lookup_walk()
3660 enum maple_type type = maple_leaf_64; in mas_new_root() local
3674 pivots = ma_pivots(node, type); in mas_new_root()
3675 slots = ma_slots(node, type); in mas_new_root()
3677 mas->node = mt_mk_node(node, type); in mas_new_root()
3799 unsigned char copy_size, node_pivots = mt_pivots[wr_mas->type]; in mas_wr_node_store()
3805 mas_bulk_rebalance(mas, mas->end, wr_mas->type); in mas_wr_node_store()
3816 dst_pivots = ma_pivots(newnode, wr_mas->type); in mas_wr_node_store()
3817 dst_slots = ma_slots(newnode, wr_mas->type); in mas_wr_node_store()
3856 mas->node = mt_mk_node(newnode, wr_mas->type); in mas_wr_node_store()
3996 if (new_end < mt_pivots[wr_mas->type]) { in mas_wr_append()
3998 ma_set_meta(wr_mas->node, wr_mas->type, 0, new_end); in mas_wr_append()
4220 if (new_end < mt_min_slots[wr_mas->type]) { in mas_wr_store_type()
4229 if (new_end >= mt_slots[wr_mas->type]) { in mas_wr_store_type()
4245 if (mte_is_root(mas->node) || (new_end >= mt_min_slots[wr_mas->type]) || in mas_wr_store_type()
4498 enum maple_type type; in mas_prev_slot() local
4505 type = mte_node_type(mas->node); in mas_prev_slot()
4506 pivots = ma_pivots(node, type); in mas_prev_slot()
4539 type = mte_node_type(mas->node); in mas_prev_slot()
4540 pivots = ma_pivots(node, type); in mas_prev_slot()
4544 slots = ma_slots(node, type); in mas_prev_slot()
4671 enum maple_type type; in mas_next_slot() local
4678 type = mte_node_type(mas->node); in mas_next_slot()
4679 pivots = ma_pivots(node, type); in mas_next_slot()
4723 type = mte_node_type(mas->node); in mas_next_slot()
4724 pivots = ma_pivots(node, type); in mas_next_slot()
4728 slots = ma_slots(node, type); in mas_next_slot()
4785 enum maple_type type = mte_node_type(mas->node); in mas_rev_awalk() local
4796 if (ma_is_dense(type)) { in mas_rev_awalk()
4802 pivots = ma_pivots(node, type); in mas_rev_awalk()
4803 slots = ma_slots(node, type); in mas_rev_awalk()
4804 gaps = ma_gaps(node, type); in mas_rev_awalk()
4811 max = mas_safe_pivot(mas, pivots, offset, type); in mas_rev_awalk()
4846 if (unlikely(ma_is_leaf(type))) { in mas_rev_awalk()
4871 enum maple_type type = mte_node_type(mas->node); in mas_anode_descend() local
4879 if (ma_is_dense(type)) { in mas_anode_descend()
4885 pivots = ma_pivots(node, type); in mas_anode_descend()
4886 slots = ma_slots(node, type); in mas_anode_descend()
4887 gaps = ma_gaps(node, type); in mas_anode_descend()
4890 data_end = ma_data_end(node, type, pivots, mas->max); in mas_anode_descend()
4892 pivot = mas_safe_pivot(mas, pivots, offset, type); in mas_anode_descend()
4906 if (ma_is_leaf(type)) { in mas_anode_descend()
5209 enum maple_type type; in mte_dead_leaves() local
5215 type = mte_node_type(entry); in mte_dead_leaves()
5218 if (!node || !type) in mte_dead_leaves()
5222 node->type = type; in mte_dead_leaves()
5245 slots = ma_slots(node, node->type); in mte_dead_walk()
5249 } while (!ma_is_leaf(next->type)); in mte_dead_walk()
5266 enum maple_type type; in mt_free_walk() local
5270 if (ma_is_leaf(node->type)) in mt_free_walk()
5274 enode = mt_mk_node(node, node->type); in mt_free_walk()
5284 type = mte_node_type(enode); in mt_free_walk()
5285 slots = ma_slots(mte_to_node(enode), type); in mt_free_walk()
5286 if ((offset < mt_slots[type]) && in mt_free_walk()
5293 slots = ma_slots(node, node->type); in mt_free_walk()
5306 enum maple_type type; in mte_destroy_descend() local
5312 type = mte_node_type(*enode); in mte_destroy_descend()
5313 slots = ma_slots(node, type); in mte_destroy_descend()
5319 node->type = type; in mte_destroy_descend()
5339 node->type = mte_node_type(enode); in mt_destroy_walk()
5347 enum maple_type type; in mt_destroy_walk() local
5359 type = mte_node_type(enode); in mt_destroy_walk()
5360 slots = ma_slots(mte_to_node(enode), type); in mt_destroy_walk()
5361 if (offset >= mt_slots[type]) in mt_destroy_walk()
5383 mt_clear_meta(mt, node, node->type); in mt_destroy_walk()
6611 enum maple_type type; in mas_dup_free() local
6632 type = mte_node_type(mas->node); in mas_dup_free()
6633 slots = ma_slots(node, type); in mas_dup_free()
6681 enum maple_type type; in mas_dup_alloc() local
6688 type = mte_node_type(mas->node); in mas_dup_alloc()
6689 new_slots = ma_slots(new_node, type); in mas_dup_alloc()
6699 slots = ma_slots(node, type); in mas_dup_alloc()
6726 enum maple_type type; in mas_dup_build() local
6745 type = mte_node_type(mas->node); in mas_dup_build()
6746 root = mt_mk_node(node, type); in mas_dup_build()
7258 unsigned int type = mte_node_type(entry); in mt_dump_node() local
7263 pr_cont("node %p depth %d type %d parent %p", node, depth, type, in mt_dump_node()
7265 switch (type) { in mt_dump_node()
7433 enum maple_type type = mte_node_type(mas->node); in mas_validate_child_slot() local
7434 void __rcu **slots = ma_slots(mte_to_node(mas->node), type); in mas_validate_child_slot()
7435 unsigned long *pivots = ma_pivots(mte_to_node(mas->node), type); in mas_validate_child_slot()
7442 for (i = 0; i < mt_slots[type]; i++) { in mas_validate_child_slot()
7465 if (i < mt_pivots[type] && pivots[i] == mas->max) in mas_validate_child_slot()
7479 enum maple_type type = mte_node_type(mas->node); in mas_validate_limits() local
7480 void __rcu **slots = ma_slots(mte_to_node(mas->node), type); in mas_validate_limits()
7481 unsigned long *pivots = ma_pivots(mas_mn(mas), type); in mas_validate_limits()
7483 for (i = 0; i < mt_slots[type]; i++) { in mas_validate_limits()
7486 piv = mas_safe_pivot(mas, pivots, i, type); in mas_validate_limits()
7521 for (i += 1; i < mt_slots[type]; i++) { in mas_validate_limits()
7524 if (entry && (i != mt_slots[type] - 1)) { in mas_validate_limits()
7530 if (i < mt_pivots[type]) { in mas_validate_limits()
7538 MAS_WARN_ON(mas, i < mt_pivots[type] - 1); in mas_validate_limits()
7695 wr_mas->type, wr_mas->offset_end, wr_mas->mas->end, in mas_wr_dump()