Lines Matching refs:slots
805 void __rcu **slots, unsigned char offset) in mt_slot() argument
807 return rcu_dereference_check(slots[offset], mt_locked(mt)); in mt_slot()
818 static inline void *mas_slot_locked(struct ma_state *mas, void __rcu **slots, in mas_slot_locked() argument
821 return rcu_dereference_protected(slots[offset], mt_locked(mas->tree)); in mas_slot_locked()
832 static inline void *mas_slot(struct ma_state *mas, void __rcu **slots, in mas_slot() argument
835 return mt_slot(mas->tree, slots, offset); in mas_slot()
1003 void __rcu **slots; in mas_descend() local
1008 slots = ma_slots(node, type); in mas_descend()
1013 mas->node = mas_slot(mas, slots, mas->offset); in mas_descend()
1212 void **slots = NULL; in mas_alloc_nodes() local
1244 slots = (void **)&node->slot[offset]; in mas_alloc_nodes()
1247 slots = (void **)&node->slot; in mas_alloc_nodes()
1251 count = mt_alloc_bulk(gfp, max_req, slots); in mas_alloc_nodes()
1257 if (slots == (void **)&node->slot) in mas_alloc_nodes()
1269 memset(slots, 0, max_req * sizeof(unsigned long)); in mas_alloc_nodes()
1453 void __rcu **slots; in mas_leaf_max_gap() local
1459 slots = ma_slots(mn, mt); in mas_leaf_max_gap()
1464 if (slots[i]) { in mas_leaf_max_gap()
1482 if (likely(!slots[0])) { in mas_leaf_max_gap()
1495 if (unlikely(mas->max == ULONG_MAX) && !slots[max_piv + 1]) { in mas_leaf_max_gap()
1503 if (likely(slots[i])) in mas_leaf_max_gap()
1671 void __rcu **slots = ma_slots(node, type); in mas_adopt_children() local
1678 child = mas_slot_locked(mas, slots, offset); in mas_adopt_children()
1696 void __rcu **slots = NULL; in mas_replace() local
1702 slots = ma_slots(mte_parent(mas->node), in mas_replace()
1704 old_enode = mas_slot_locked(mas, slots, offset); in mas_replace()
1716 rcu_assign_pointer(slots[offset], mas->node); in mas_replace()
1737 void __rcu **slots; in mas_new_child() local
1741 slots = ma_slots(node, mt); in mas_new_child()
1745 entry = mas_slot_locked(mas, slots, offset); in mas_new_child()
1907 void __rcu **slots; in mas_mab_cp() local
1938 slots = ma_slots(node, mt); in mas_mab_cp()
1939 memcpy(b_node->slot + mab_start, slots + mas_start, sizeof(void *) * j); in mas_mab_cp()
1988 void __rcu **slots = ma_slots(node, mt); in mab_mas_cp() local
1997 slots[mt_pivots[mt]] = NULL; in mab_mas_cp()
2004 memcpy(slots, b_node->slot + mab_start, in mab_mas_cp()
2154 wr_mas->content = mas_slot_locked(mas, wr_mas->slots, in mas_store_b_node()
2303 void __rcu **slots; in mas_topiary_range() local
2307 slots = ma_slots(mas_mn(mas), mte_node_type(mas->node)); in mas_topiary_range()
2309 struct maple_enode *enode = mas_slot_locked(mas, slots, offset); in mas_topiary_range()
2896 void __rcu **slots; in mtree_range_walk() local
2932 slots = ma_slots(node, type); in mtree_range_walk()
2933 next = mt_slot(mas->tree, slots, offset); in mtree_range_walk()
3166 void __rcu **l_slots, **slots; in mas_destroy_rebalance() local
3189 slots = ma_slots(newnode, mt); in mas_destroy_rebalance()
3198 memcpy(slots, l_slots + split + 1, sizeof(void *) * tmp); in mas_destroy_rebalance()
3201 memcpy(slots + tmp, ma_slots(node, mt), sizeof(void *) * end); in mas_destroy_rebalance()
3218 memset(slots + tmp, 0, sizeof(void *) * (max_s - tmp)); in mas_destroy_rebalance()
3241 slots = ma_slots(new_left, mt); in mas_destroy_rebalance()
3243 memcpy(slots, l_slots, sizeof(void *) * split); in mas_destroy_rebalance()
3252 slots = ma_slots(parent, mt); in mas_destroy_rebalance()
3255 rcu_assign_pointer(slots[offset], mas->node); in mas_destroy_rebalance()
3256 rcu_assign_pointer(slots[offset - 1], l_mas.node); in mas_destroy_rebalance()
3568 memset(wr_mas->slots + bn->b_end, 0, sizeof(void *) * clear--); in mas_reuse_node()
3623 void __rcu **slots; in mas_root_expand() local
3633 slots = ma_slots(node, type); in mas_root_expand()
3640 rcu_assign_pointer(slots[slot], contents); in mas_root_expand()
3647 rcu_assign_pointer(slots[slot], entry); in mas_root_expand()
3732 wr_mas->slots = ma_slots(wr_mas->node, wr_mas->type); in mas_wr_walk_descend()
3760 wr_mas->content = mas_slot_locked(mas, wr_mas->slots, in mas_wr_walk()
3777 wr_mas->content = mas_slot_locked(mas, wr_mas->slots, in mas_wr_walk_index()
3804 !mas_slot_locked(l_mas, l_wr_mas->slots, l_slot - 1))) { in mas_extend_spanning_null()
3819 !mas_slot_locked(r_mas, r_wr_mas->slots, r_mas->offset + 1)) { in mas_extend_spanning_null()
3856 void __rcu **slots; in mtree_lookup_walk() local
3882 slots = ma_slots(node, type); in mtree_lookup_walk()
3883 next = mt_slot(mas->tree, slots, offset); in mtree_lookup_walk()
3910 void __rcu **slots; in mas_new_root() local
3927 slots = ma_slots(node, type); in mas_new_root()
3931 rcu_assign_pointer(slots[0], entry); in mas_new_root()
4114 memcpy(dst_slots, wr_mas->slots, sizeof(void *) * (offset + 1)); in mas_wr_node_store()
4142 memcpy(dst_slots + dst_offset, wr_mas->slots + wr_mas->offset_end, in mas_wr_node_store()
4200 rcu_assign_pointer(wr_mas->slots[offset], wr_mas->entry); in mas_wr_slot_store()
4214 rcu_assign_pointer(wr_mas->slots[offset + 1], wr_mas->entry); in mas_wr_slot_store()
4238 if (mas->last < wr_mas->end_piv && !wr_mas->slots[wr_mas->offset_end]) in mas_wr_extend_null()
4244 !wr_mas->slots[wr_mas->offset_end + 1]) { in mas_wr_extend_null()
4259 !wr_mas->slots[mas->offset - 1]) { in mas_wr_extend_null()
4282 rcu_assign_pointer(wr_mas->slots[new_end], wr_mas->entry); in mas_wr_append()
4293 rcu_assign_pointer(wr_mas->slots[new_end], wr_mas->content); in mas_wr_append()
4298 rcu_assign_pointer(wr_mas->slots[end], wr_mas->entry); in mas_wr_append()
4329 rcu_assign_pointer(wr_mas->slots[mas->offset], wr_mas->entry); in mas_wr_modify()
4474 void __rcu **slots; in mas_prev_node() local
4498 slots = ma_slots(node, mt); in mas_prev_node()
4511 enode = mas_slot(mas, slots, offset); in mas_prev_node()
4518 slots = ma_slots(node, mt); in mas_prev_node()
4531 mas->node = mas_slot(mas, slots, offset); in mas_prev_node()
4570 void __rcu **slots; in mas_next_node() local
4594 slots = ma_slots(node, mt); in mas_next_node()
4598 enode = mas_slot(mas, slots, offset); in mas_next_node()
4606 slots = ma_slots(node, mt); in mas_next_node()
4612 enode = mas_slot(mas, slots, offset); in mas_next_node()
4646 void __rcu **slots; in mas_next_nentry() local
4655 slots = ma_slots(node, type); in mas_next_nentry()
4669 entry = mas_slot(mas, slots, mas->offset); in mas_next_nentry()
4689 entry = mas_slot(mas, slots, mas->offset); in mas_next_nentry()
4796 void __rcu **slots; in mas_prev_nentry() local
4809 slots = ma_slots(mn, mt); in mas_prev_nentry()
4821 while (offset && ((!mas_slot(mas, slots, offset) && pivot >= limit) || in mas_prev_nentry()
4826 entry = mas_slot(mas, slots, offset); in mas_prev_nentry()
4881 void __rcu **slots; in mas_rev_awalk() local
4896 slots = ma_slots(node, type); in mas_rev_awalk()
4910 else if (!mas_slot(mas, slots, offset)) in mas_rev_awalk()
4950 mas->node = mas_slot(mas, slots, offset); in mas_rev_awalk()
4970 void __rcu **slots = ma_slots(mas_mn(mas), type); in mas_anode_descend() local
4992 else if (!mas_slot(mas, slots, offset)) in mas_anode_descend()
5003 mas->node = mas_slot(mas, slots, offset); in mas_anode_descend()
5413 unsigned char mas_dead_leaves(struct ma_state *mas, void __rcu **slots) in mas_dead_leaves() argument
5421 entry = mas_slot_locked(mas, slots, offset); in mas_dead_leaves()
5431 rcu_assign_pointer(slots[offset], node); in mas_dead_leaves()
5440 void __rcu **slots = NULL; in mas_dead_walk() local
5446 slots = ma_slots(node, node->type); in mas_dead_walk()
5447 next = mas_slot_locked(mas, slots, offset); in mas_dead_walk()
5451 return slots; in mas_dead_walk()
5456 void __rcu **slots; in mt_free_walk() local
5472 slots = mas_dead_walk(&mas, 0); in mt_free_walk()
5475 mt_free_bulk(node->slot_len, slots); in mt_free_walk()
5482 slots = ma_slots(mte_to_node(mas.node), type); in mt_free_walk()
5483 if ((offset < mt_slots[type]) && (slots[offset])) in mt_free_walk()
5484 slots = mas_dead_walk(&mas, offset); in mt_free_walk()
5489 slots = ma_slots(node, node->type); in mt_free_walk()
5490 mt_free_bulk(node->slot_len, slots); in mt_free_walk()
5503 void __rcu **slots = NULL; in mas_destroy_descend() local
5508 slots = ma_slots(node, mte_node_type(mas->node)); in mas_destroy_descend()
5509 next = mas_slot_locked(mas, slots, 0); in mas_destroy_descend()
5511 next = mas_slot_locked(mas, slots, 1); in mas_destroy_descend()
5521 return slots; in mas_destroy_descend()
5527 void __rcu **slots; in mt_destroy_walk() local
5541 slots = mas_destroy_descend(&mas, start, 0); in mt_destroy_walk()
5548 node->slot_len = mas_dead_leaves(&mas, slots); in mt_destroy_walk()
5550 mt_free_bulk(node->slot_len, slots); in mt_destroy_walk()
5557 slots = ma_slots(mte_to_node(mas.node), type); in mt_destroy_walk()
5561 tmp = mas_slot_locked(&mas, slots, offset); in mt_destroy_walk()
5565 slots = mas_destroy_descend(&mas, parent, offset); in mt_destroy_walk()
5572 node->slot_len = mas_dead_leaves(&mas, slots); in mt_destroy_walk()
5574 mt_free_bulk(node->slot_len, slots); in mt_destroy_walk()
6597 void __rcu **slots; in mas_first_entry() local
6608 slots = ma_slots(mn, mt); in mas_first_entry()
6611 entry = mas_slot(mas, slots, 0); in mas_first_entry()
6621 slots = ma_slots(mn, mt); in mas_first_entry()
6622 entry = mas_slot(mas, slots, 0); in mas_first_entry()
6636 entry = mas_slot(mas, slots, 1); in mas_first_entry()
6936 void __rcu **slots; in mas_validate_parent_slot() local
6943 slots = ma_slots(parent, p_type); in mas_validate_parent_slot()
6949 node = mas_slot(mas, slots, i); in mas_validate_parent_slot()
6966 void __rcu **slots = ma_slots(mte_to_node(mas->node), type); in mas_validate_child_slot() local
6975 child = mas_slot(mas, slots, i); in mas_validate_child_slot()
7006 void __rcu **slots = ma_slots(mte_to_node(mas->node), type); in mas_validate_limits() local
7022 void *entry = mas_slot(mas, slots, i); in mas_validate_limits()
7052 void *entry = mas_slot(mas, slots, i); in mas_validate_limits()
7077 void __rcu **slots; in mt_validate_nulls() local
7087 slots = ma_slots(mte_to_node(mas.node), mte_node_type(mas.node)); in mt_validate_nulls()
7089 entry = mas_slot(&mas, slots, offset); in mt_validate_nulls()
7101 slots = ma_slots(mte_to_node(mas.node), in mt_validate_nulls()