• Home
  • Raw
  • Download

Lines Matching refs:slot

324 	struct radix_tree_node *slot;  in radix_tree_extend()  local
355 slot = root->rnode; in radix_tree_extend()
357 slot = indirect_to_ptr(slot); in radix_tree_extend()
358 slot->parent = node; in radix_tree_extend()
360 node->slots[0] = slot; in radix_tree_extend()
388 struct radix_tree_node *node = NULL, *slot; in __radix_tree_create() local
399 slot = indirect_to_ptr(root->rnode); in __radix_tree_create()
406 if (slot == NULL) { in __radix_tree_create()
408 if (!(slot = radix_tree_node_alloc(root))) in __radix_tree_create()
410 slot->path = height; in __radix_tree_create()
411 slot->parent = node; in __radix_tree_create()
413 rcu_assign_pointer(node->slots[offset], slot); in __radix_tree_create()
415 slot->path |= offset << RADIX_TREE_HEIGHT_SHIFT; in __radix_tree_create()
417 rcu_assign_pointer(root->rnode, ptr_to_indirect(slot)); in __radix_tree_create()
422 node = slot; in __radix_tree_create()
423 slot = node->slots[offset]; in __radix_tree_create()
447 void **slot; in radix_tree_insert() local
452 error = __radix_tree_create(root, index, &node, &slot); in radix_tree_insert()
455 if (*slot != NULL) in radix_tree_insert()
457 rcu_assign_pointer(*slot, item); in radix_tree_insert()
491 void **slot; in __radix_tree_lookup() local
517 slot = node->slots + ((index >> shift) & RADIX_TREE_MAP_MASK); in __radix_tree_lookup()
518 node = rcu_dereference_raw(*slot); in __radix_tree_lookup()
529 *slotp = slot; in __radix_tree_lookup()
548 void **slot; in radix_tree_lookup_slot() local
550 if (!__radix_tree_lookup(root, index, NULL, &slot)) in radix_tree_lookup_slot()
552 return slot; in radix_tree_lookup_slot()
591 struct radix_tree_node *slot; in radix_tree_tag_set() local
596 slot = indirect_to_ptr(root->rnode); in radix_tree_tag_set()
603 if (!tag_get(slot, tag, offset)) in radix_tree_tag_set()
604 tag_set(slot, tag, offset); in radix_tree_tag_set()
605 slot = slot->slots[offset]; in radix_tree_tag_set()
606 BUG_ON(slot == NULL); in radix_tree_tag_set()
612 if (slot && !root_tag_get(root, tag)) in radix_tree_tag_set()
615 return slot; in radix_tree_tag_set()
637 struct radix_tree_node *slot = NULL; in radix_tree_tag_clear() local
646 slot = indirect_to_ptr(root->rnode); in radix_tree_tag_clear()
649 if (slot == NULL) in radix_tree_tag_clear()
654 node = slot; in radix_tree_tag_clear()
655 slot = slot->slots[offset]; in radix_tree_tag_clear()
658 if (slot == NULL) in radix_tree_tag_clear()
678 return slot; in radix_tree_tag_clear()
890 struct radix_tree_node *slot; in radix_tree_range_tag_if_tagged() local
911 slot = indirect_to_ptr(root->rnode); in radix_tree_range_tag_if_tagged()
918 if (!slot->slots[offset]) in radix_tree_range_tag_if_tagged()
920 if (!tag_get(slot, iftag, offset)) in radix_tree_range_tag_if_tagged()
925 node = slot; in radix_tree_range_tag_if_tagged()
926 slot = slot->slots[offset]; in radix_tree_range_tag_if_tagged()
932 tag_set(slot, settag, offset); in radix_tree_range_tag_if_tagged()
970 slot = slot->parent; in radix_tree_range_tag_if_tagged()
1010 void **slot; in radix_tree_gang_lookup() local
1016 radix_tree_for_each_slot(slot, root, &iter, first_index) { in radix_tree_gang_lookup()
1017 results[ret] = rcu_dereference_raw(*slot); in radix_tree_gang_lookup()
1021 slot = radix_tree_iter_retry(&iter); in radix_tree_gang_lookup()
1056 void **slot; in radix_tree_gang_lookup_slot() local
1062 radix_tree_for_each_slot(slot, root, &iter, first_index) { in radix_tree_gang_lookup_slot()
1063 results[ret] = slot; in radix_tree_gang_lookup_slot()
1093 void **slot; in radix_tree_gang_lookup_tag() local
1099 radix_tree_for_each_tagged(slot, root, &iter, first_index, tag) { in radix_tree_gang_lookup_tag()
1100 results[ret] = rcu_dereference_raw(*slot); in radix_tree_gang_lookup_tag()
1104 slot = radix_tree_iter_retry(&iter); in radix_tree_gang_lookup_tag()
1134 void **slot; in radix_tree_gang_lookup_tag_slot() local
1140 radix_tree_for_each_tagged(slot, root, &iter, first_index, tag) { in radix_tree_gang_lookup_tag_slot()
1141 results[ret] = slot; in radix_tree_gang_lookup_tag_slot()
1156 static unsigned long __locate(struct radix_tree_node *slot, void *item, in __locate() argument
1162 height = slot->path & RADIX_TREE_HEIGHT_MASK; in __locate()
1168 if (slot->slots[i] != NULL) in __locate()
1180 slot = rcu_dereference_raw(slot->slots[i]); in __locate()
1181 if (slot == NULL) in __locate()
1187 if (slot->slots[i] == item) { in __locate()
1255 struct radix_tree_node *slot; in radix_tree_shrink() local
1276 slot = to_free->slots[0]; in radix_tree_shrink()
1278 slot->parent = NULL; in radix_tree_shrink()
1279 slot = ptr_to_indirect(slot); in radix_tree_shrink()
1281 root->rnode = slot; in radix_tree_shrink()
1376 void **slot; in radix_tree_delete_item() local
1380 entry = __radix_tree_lookup(root, index, &node, &slot); in radix_tree_delete_item()