Lines Matching refs:parent

27 	const struct assoc_array_ptr *cursor, *ptr, *parent;
89 /* Move up to the parent (may need to skip back over a shortcut) */
90 parent = READ_ONCE(node->back_pointer); /* Address dependency. */
92 if (parent == stop)
95 if (assoc_array_ptr_is_shortcut(parent)) {
96 shortcut = assoc_array_ptr_to_shortcut(parent);
97 cursor = parent;
98 parent = READ_ONCE(shortcut->back_pointer); /* Address dependency. */
100 if (parent == stop)
104 /* Ascend to next slot in parent node */
105 cursor = parent;
348 struct assoc_array_ptr *cursor, *parent = NULL;
365 BUG_ON(shortcut->back_pointer != parent);
367 parent = cursor;
375 BUG_ON(node->back_pointer != parent);
386 parent = cursor;
397 parent = node->back_pointer;
401 if (!parent)
404 /* Move back up to the parent (may need to free a shortcut on
406 if (assoc_array_ptr_is_shortcut(parent)) {
407 shortcut = assoc_array_ptr_to_shortcut(parent);
409 cursor = parent;
410 parent = shortcut->back_pointer;
414 if (!parent)
417 BUG_ON(!assoc_array_ptr_is_node(parent));
420 /* Ascend to next slot in parent node */
421 pr_devel("ascend to %p[%d]\n", parent, slot);
422 cursor = parent;
843 * parent.
892 * shortcut if its parent slot number doesn't change - but that's a
923 * use memory barriers to make sure the parent slot number is
924 * changed before the back pointer (the parent slot number is
925 * irrelevant to the old parent shortcut).
1158 struct assoc_array_node *parent, *grandparent;
1180 parent = node;
1182 pr_devel("collapse subtree: %ld\n", parent->nr_leaves_on_branch);
1184 ptr = parent->back_pointer;
1196 parent = grandparent;
1205 if (has_meta || parent != node) {
1206 node = parent;