• Home
  • Raw
  • Download

Lines Matching refs:child

483 		struct radix_tree_node *child;  in radix_tree_shrink()  local
495 child = rcu_dereference_raw(node->slots[0]); in radix_tree_shrink()
496 if (!child) in radix_tree_shrink()
507 if (radix_tree_is_internal_node(child)) in radix_tree_shrink()
508 entry_to_node(child)->parent = NULL; in radix_tree_shrink()
517 root->xa_head = (void __rcu *)child; in radix_tree_shrink()
540 if (!radix_tree_is_internal_node(child)) { in radix_tree_shrink()
611 struct radix_tree_node *node = NULL, *child; in __radix_tree_create() local
618 shift = radix_tree_load_root(root, &child, &maxindex); in __radix_tree_create()
626 child = rcu_dereference_raw(root->xa_head); in __radix_tree_create()
631 if (child == NULL) { in __radix_tree_create()
633 child = radix_tree_node_alloc(gfp, node, root, shift, in __radix_tree_create()
635 if (!child) in __radix_tree_create()
637 rcu_assign_pointer(*slot, node_to_entry(child)); in __radix_tree_create()
640 } else if (!radix_tree_is_internal_node(child)) in __radix_tree_create()
644 node = entry_to_node(child); in __radix_tree_create()
645 offset = radix_tree_descend(node, &child, index); in __radix_tree_create()
668 struct radix_tree_node *child = entry_to_node(node); in radix_tree_free_nodes() local
671 void *entry = rcu_dereference_raw(child->slots[offset]); in radix_tree_free_nodes()
672 if (xa_is_node(entry) && child->shift) { in radix_tree_free_nodes()
673 child = entry_to_node(entry); in radix_tree_free_nodes()
679 struct radix_tree_node *old = child; in radix_tree_free_nodes()
680 offset = child->offset + 1; in radix_tree_free_nodes()
681 child = child->parent; in radix_tree_free_nodes()
1167 struct radix_tree_node *node, *child; in radix_tree_next_chunk() local
1187 radix_tree_load_root(root, &child, &maxindex); in radix_tree_next_chunk()
1190 if (!child) in radix_tree_next_chunk()
1193 if (!radix_tree_is_internal_node(child)) { in radix_tree_next_chunk()
1203 node = entry_to_node(child); in radix_tree_next_chunk()
1204 offset = radix_tree_descend(node, &child, index); in radix_tree_next_chunk()
1207 !tag_get(node, tag, offset) : !child) { in radix_tree_next_chunk()
1229 child = rcu_dereference_raw(node->slots[offset]); in radix_tree_next_chunk()
1232 if (!child) in radix_tree_next_chunk()
1234 if (child == RADIX_TREE_RETRY) in radix_tree_next_chunk()
1236 } while (node->shift && radix_tree_is_internal_node(child)); in radix_tree_next_chunk()
1489 struct radix_tree_node *node = NULL, *child; in idr_get_free() local
1495 shift = radix_tree_load_root(root, &child, &maxindex); in idr_get_free()
1506 child = rcu_dereference_raw(root->xa_head); in idr_get_free()
1513 if (child == NULL) { in idr_get_free()
1515 child = radix_tree_node_alloc(gfp, node, root, shift, in idr_get_free()
1517 if (!child) in idr_get_free()
1519 all_tag_set(child, IDR_FREE); in idr_get_free()
1520 rcu_assign_pointer(*slot, node_to_entry(child)); in idr_get_free()
1523 } else if (!radix_tree_is_internal_node(child)) in idr_get_free()
1526 node = entry_to_node(child); in idr_get_free()
1527 offset = radix_tree_descend(node, &child, start); in idr_get_free()
1541 child = rcu_dereference_raw(node->slots[offset]); in idr_get_free()