Lines Matching refs:node
26 const struct assoc_array_node *node; in assoc_array_subtree_iterate() local
40 node = assoc_array_ptr_to_node(cursor); in assoc_array_subtree_iterate()
52 ptr = READ_ONCE(node->slots[slot]); /* Address dependency. */ in assoc_array_subtree_iterate()
79 node = assoc_array_ptr_to_node(cursor); in assoc_array_subtree_iterate()
81 ptr = READ_ONCE(node->slots[slot]); /* Address dependency. */ in assoc_array_subtree_iterate()
90 parent = READ_ONCE(node->back_pointer); /* Address dependency. */ in assoc_array_subtree_iterate()
91 slot = node->parent_slot; in assoc_array_subtree_iterate()
153 struct assoc_array_node *node; /* Node in which leaf might be found */ member
176 struct assoc_array_node *node; in assoc_array_walk() local
206 node = assoc_array_ptr_to_node(cursor); in assoc_array_walk()
209 ptr = READ_ONCE(node->slots[slot]); /* Address dependency. */ in assoc_array_walk()
218 result->terminal_node.node = node; in assoc_array_walk()
309 const struct assoc_array_node *node; in assoc_array_find() local
318 node = result.terminal_node.node; in assoc_array_find()
324 ptr = READ_ONCE(node->slots[slot]); /* Address dependency. */ in assoc_array_find()
347 struct assoc_array_node *node; in assoc_array_destroy_subtree() local
374 node = assoc_array_ptr_to_node(cursor); in assoc_array_destroy_subtree()
375 BUG_ON(node->back_pointer != parent); in assoc_array_destroy_subtree()
376 BUG_ON(slot != -1 && node->parent_slot != slot); in assoc_array_destroy_subtree()
380 pr_devel("Node %p [back=%p]\n", node, node->back_pointer); in assoc_array_destroy_subtree()
382 struct assoc_array_ptr *ptr = node->slots[slot]; in assoc_array_destroy_subtree()
397 parent = node->back_pointer; in assoc_array_destroy_subtree()
398 slot = node->parent_slot; in assoc_array_destroy_subtree()
400 kfree(node); in assoc_array_destroy_subtree()
423 node = assoc_array_ptr_to_node(cursor); in assoc_array_destroy_subtree()
480 struct assoc_array_node *node, *new_n0, *new_n1, *side; in assoc_array_insert_into_terminal_node() local
488 node = result->terminal_node.node; in assoc_array_insert_into_terminal_node()
505 ptr = node->slots[i]; in assoc_array_insert_into_terminal_node()
514 edit->leaf_p = &node->slots[i]; in assoc_array_insert_into_terminal_node()
515 edit->dead_leaf = node->slots[i]; in assoc_array_insert_into_terminal_node()
526 edit->leaf_p = &node->slots[free_slot]; in assoc_array_insert_into_terminal_node()
527 edit->adjust_count_on = node; in assoc_array_insert_into_terminal_node()
552 ptr = node->slots[i]; in assoc_array_insert_into_terminal_node()
614 new_n0->back_pointer = node->back_pointer; in assoc_array_insert_into_terminal_node()
615 new_n0->parent_slot = node->parent_slot; in assoc_array_insert_into_terminal_node()
622 new_n0->nr_leaves_on_branch = node->nr_leaves_on_branch; in assoc_array_insert_into_terminal_node()
648 if (assoc_array_ptr_is_meta(node->slots[i])) in assoc_array_insert_into_terminal_node()
649 new_n0->slots[i] = node->slots[i]; in assoc_array_insert_into_terminal_node()
659 if (assoc_array_ptr_is_meta(node->slots[i])) in assoc_array_insert_into_terminal_node()
662 new_n1->slots[next_slot++] = node->slots[i]; in assoc_array_insert_into_terminal_node()
668 new_n0->slots[free_slot] = node->slots[i]; in assoc_array_insert_into_terminal_node()
690 ptr = node->slots[i]; in assoc_array_insert_into_terminal_node()
702 ptr = node->back_pointer; in assoc_array_insert_into_terminal_node()
706 edit->set[0].ptr = &assoc_array_ptr_to_node(ptr)->slots[node->parent_slot]; in assoc_array_insert_into_terminal_node()
709 edit->excised_meta[0] = assoc_array_node_to_ptr(node); in assoc_array_insert_into_terminal_node()
731 int x = ops->diff_objects(assoc_array_ptr_to_leaf(node->slots[i]), in assoc_array_insert_into_terminal_node()
750 new_s0->back_pointer = node->back_pointer; in assoc_array_insert_into_terminal_node()
751 new_s0->parent_slot = node->parent_slot; in assoc_array_insert_into_terminal_node()
776 ptr = node->slots[i]; in assoc_array_insert_into_terminal_node()
797 struct assoc_array_node *node, *new_n0, *side; in assoc_array_insert_mid_shortcut() local
826 node = assoc_array_ptr_to_node(shortcut->back_pointer); in assoc_array_insert_mid_shortcut()
827 edit->set[0].ptr = &node->slots[shortcut->parent_slot]; in assoc_array_insert_mid_shortcut()
1037 struct assoc_array_node *node; member
1055 collapse->node->slots[collapse->slot++] = assoc_array_leaf_to_ptr(leaf); in assoc_array_delete_collapse_iterator()
1084 struct assoc_array_node *node, *new_n0; in assoc_array_delete() local
1105 node = result.terminal_node.node; in assoc_array_delete()
1108 ptr = node->slots[slot]; in assoc_array_delete()
1130 edit->dead_leaf = node->slots[slot]; in assoc_array_delete()
1131 edit->set[0].ptr = &node->slots[slot]; in assoc_array_delete()
1133 edit->adjust_count_on = node; in assoc_array_delete()
1157 if (node->nr_leaves_on_branch <= ASSOC_ARRAY_FAN_OUT + 1) { in assoc_array_delete()
1167 ptr = node->slots[i]; in assoc_array_delete()
1175 node->nr_leaves_on_branch - 1, has_meta); in assoc_array_delete()
1180 parent = node; in assoc_array_delete()
1205 if (has_meta || parent != node) { in assoc_array_delete()
1206 node = parent; in assoc_array_delete()
1214 new_n0->back_pointer = node->back_pointer; in assoc_array_delete()
1215 new_n0->parent_slot = node->parent_slot; in assoc_array_delete()
1216 new_n0->nr_leaves_on_branch = node->nr_leaves_on_branch; in assoc_array_delete()
1219 collapse.node = new_n0; in assoc_array_delete()
1222 assoc_array_subtree_iterate(assoc_array_node_to_ptr(node), in assoc_array_delete()
1223 node->back_pointer, in assoc_array_delete()
1229 if (!node->back_pointer) { in assoc_array_delete()
1231 } else if (assoc_array_ptr_is_leaf(node->back_pointer)) { in assoc_array_delete()
1233 } else if (assoc_array_ptr_is_node(node->back_pointer)) { in assoc_array_delete()
1235 assoc_array_ptr_to_node(node->back_pointer); in assoc_array_delete()
1236 edit->set[1].ptr = &p->slots[node->parent_slot]; in assoc_array_delete()
1237 } else if (assoc_array_ptr_is_shortcut(node->back_pointer)) { in assoc_array_delete()
1239 assoc_array_ptr_to_shortcut(node->back_pointer); in assoc_array_delete()
1243 edit->excised_subtree = assoc_array_node_to_ptr(node); in assoc_array_delete()
1348 struct assoc_array_node *node; in assoc_array_apply_edit() local
1376 node = edit->adjust_count_on; in assoc_array_apply_edit()
1378 node->nr_leaves_on_branch += edit->adjust_count_by; in assoc_array_apply_edit()
1380 ptr = node->back_pointer; in assoc_array_apply_edit()
1390 node = assoc_array_ptr_to_node(ptr); in assoc_array_apply_edit()
1459 struct assoc_array_node *node, *new_n; in assoc_array_gc() local
1507 node = assoc_array_ptr_to_node(cursor); in assoc_array_gc()
1511 pr_devel("dup node %p -> %p\n", node, new_n); in assoc_array_gc()
1513 new_n->parent_slot = node->parent_slot; in assoc_array_gc()
1521 ptr = node->slots[slot]; in assoc_array_gc()
1699 ptr = node->back_pointer; in assoc_array_gc()
1707 slot = node->parent_slot; in assoc_array_gc()
1711 node = assoc_array_ptr_to_node(cursor); in assoc_array_gc()