Lines Matching refs:slot

80 get_slot_offset(const struct radix_tree_node *parent, void __rcu **slot)  in get_slot_offset()  argument
82 return parent ? slot - parent->slots : 0; in get_slot_offset()
603 void __rcu **slot = (void __rcu **)&root->xa_head; in __radix_tree_create() local
628 rcu_assign_pointer(*slot, node_to_entry(child)); in __radix_tree_create()
637 slot = &node->slots[offset]; in __radix_tree_create()
643 *slotp = slot; in __radix_tree_create()
682 void __rcu **slot, void *item) in insert_entries() argument
684 if (*slot) in insert_entries()
686 rcu_assign_pointer(*slot, item); in insert_entries()
707 void __rcu **slot; in radix_tree_insert() local
712 error = __radix_tree_create(root, index, &node, &slot); in radix_tree_insert()
716 error = insert_entries(node, slot, item); in radix_tree_insert()
721 unsigned offset = get_slot_offset(node, slot); in radix_tree_insert()
753 void __rcu **slot; in __radix_tree_lookup() local
757 slot = (void __rcu **)&root->xa_head; in __radix_tree_lookup()
767 slot = parent->slots + offset; in __radix_tree_lookup()
777 *slotp = slot; in __radix_tree_lookup()
797 void __rcu **slot; in radix_tree_lookup_slot() local
799 if (!__radix_tree_lookup(root, index, NULL, &slot)) in radix_tree_lookup_slot()
801 return slot; in radix_tree_lookup_slot()
823 static void replace_slot(void __rcu **slot, void *item, in replace_slot() argument
831 rcu_assign_pointer(*slot, item); in replace_slot()
851 struct radix_tree_node *node, void __rcu **slot, in calculate_count() argument
855 unsigned offset = get_slot_offset(node, slot); in calculate_count()
877 void __rcu **slot, void *item) in __radix_tree_replace() argument
879 void *old = rcu_dereference_raw(*slot); in __radix_tree_replace()
881 int count = calculate_count(root, node, slot, item, old); in __radix_tree_replace()
888 WARN_ON_ONCE(!node && (slot != (void __rcu **)&root->xa_head) && in __radix_tree_replace()
890 replace_slot(slot, item, node, count, values); in __radix_tree_replace()
915 void __rcu **slot, void *item) in radix_tree_replace_slot() argument
917 __radix_tree_replace(root, NULL, slot, item); in radix_tree_replace_slot()
933 void __rcu **slot, void *item) in radix_tree_iter_replace() argument
935 __radix_tree_replace(root, iter->node, slot, item); in radix_tree_iter_replace()
1136 void __rcu **radix_tree_iter_resume(void __rcu **slot, in radix_tree_iter_resume() argument
1208 void *slot = rcu_dereference_raw( in radix_tree_next_chunk() local
1210 if (slot) in radix_tree_next_chunk()
1266 void __rcu **slot; in radix_tree_gang_lookup() local
1272 radix_tree_for_each_slot(slot, root, &iter, first_index) { in radix_tree_gang_lookup()
1273 results[ret] = rcu_dereference_raw(*slot); in radix_tree_gang_lookup()
1277 slot = radix_tree_iter_retry(&iter); in radix_tree_gang_lookup()
1307 void __rcu **slot; in radix_tree_gang_lookup_tag() local
1313 radix_tree_for_each_tagged(slot, root, &iter, first_index, tag) { in radix_tree_gang_lookup_tag()
1314 results[ret] = rcu_dereference_raw(*slot); in radix_tree_gang_lookup_tag()
1318 slot = radix_tree_iter_retry(&iter); in radix_tree_gang_lookup_tag()
1348 void __rcu **slot; in radix_tree_gang_lookup_tag_slot() local
1354 radix_tree_for_each_tagged(slot, root, &iter, first_index, tag) { in radix_tree_gang_lookup_tag_slot()
1355 results[ret] = slot; in radix_tree_gang_lookup_tag_slot()
1365 struct radix_tree_node *node, void __rcu **slot) in __radix_tree_delete() argument
1367 void *old = rcu_dereference_raw(*slot); in __radix_tree_delete()
1369 unsigned offset = get_slot_offset(node, slot); in __radix_tree_delete()
1378 replace_slot(slot, NULL, node, -1, values); in __radix_tree_delete()
1395 struct radix_tree_iter *iter, void __rcu **slot) in radix_tree_iter_delete() argument
1397 if (__radix_tree_delete(root, iter->node, slot)) in radix_tree_iter_delete()
1417 void __rcu **slot = NULL; in radix_tree_delete_item() local
1420 entry = __radix_tree_lookup(root, index, &node, &slot); in radix_tree_delete_item()
1421 if (!slot) in radix_tree_delete_item()
1424 get_slot_offset(node, slot)))) in radix_tree_delete_item()
1430 __radix_tree_delete(root, node, slot); in radix_tree_delete_item()
1481 void __rcu **slot = (void __rcu **)&root->xa_head; in idr_get_free() local
1511 rcu_assign_pointer(*slot, node_to_entry(child)); in idr_get_free()
1534 slot = &node->slots[offset]; in idr_get_free()
1545 return slot; in idr_get_free()