Lines Matching refs:cursor
31 const struct assoc_array_ptr *cursor, *ptr, *parent; in assoc_array_subtree_iterate() local
35 cursor = root; in assoc_array_subtree_iterate()
38 if (assoc_array_ptr_is_shortcut(cursor)) { in assoc_array_subtree_iterate()
40 shortcut = assoc_array_ptr_to_shortcut(cursor); in assoc_array_subtree_iterate()
41 cursor = READ_ONCE(shortcut->next_node); /* Address dependency. */ in assoc_array_subtree_iterate()
44 node = assoc_array_ptr_to_node(cursor); in assoc_array_subtree_iterate()
83 node = assoc_array_ptr_to_node(cursor); in assoc_array_subtree_iterate()
87 cursor = ptr; in assoc_array_subtree_iterate()
101 cursor = parent; in assoc_array_subtree_iterate()
109 cursor = parent; in assoc_array_subtree_iterate()
181 struct assoc_array_ptr *cursor, *ptr; in assoc_array_walk() local
189 cursor = READ_ONCE(array->root); /* Address dependency. */ in assoc_array_walk()
190 if (!cursor) in assoc_array_walk()
206 if (assoc_array_ptr_is_shortcut(cursor)) in assoc_array_walk()
210 node = assoc_array_ptr_to_node(cursor); in assoc_array_walk()
233 cursor = ptr; in assoc_array_walk()
244 cursor = ptr; in assoc_array_walk()
246 shortcut = assoc_array_ptr_to_shortcut(cursor); in assoc_array_walk()
286 cursor = READ_ONCE(shortcut->next_node); /* Address dependency. */ in assoc_array_walk()
352 struct assoc_array_ptr *cursor, *parent = NULL; in assoc_array_destroy_subtree() local
357 cursor = root; in assoc_array_destroy_subtree()
358 if (!cursor) { in assoc_array_destroy_subtree()
364 if (assoc_array_ptr_is_shortcut(cursor)) { in assoc_array_destroy_subtree()
367 BUG_ON(!assoc_array_ptr_is_shortcut(cursor)); in assoc_array_destroy_subtree()
368 shortcut = assoc_array_ptr_to_shortcut(cursor); in assoc_array_destroy_subtree()
371 parent = cursor; in assoc_array_destroy_subtree()
372 cursor = shortcut->next_node; in assoc_array_destroy_subtree()
374 BUG_ON(!assoc_array_ptr_is_node(cursor)); in assoc_array_destroy_subtree()
378 node = assoc_array_ptr_to_node(cursor); in assoc_array_destroy_subtree()
390 parent = cursor; in assoc_array_destroy_subtree()
391 cursor = ptr; in assoc_array_destroy_subtree()
412 BUG_ON(shortcut->next_node != cursor); in assoc_array_destroy_subtree()
413 cursor = parent; in assoc_array_destroy_subtree()
426 cursor = parent; in assoc_array_destroy_subtree()
427 node = assoc_array_ptr_to_node(cursor); in assoc_array_destroy_subtree()
1465 struct assoc_array_ptr *cursor, *ptr; in assoc_array_gc() local
1487 cursor = array->root; in assoc_array_gc()
1493 if (assoc_array_ptr_is_shortcut(cursor)) { in assoc_array_gc()
1494 shortcut = assoc_array_ptr_to_shortcut(cursor); in assoc_array_gc()
1508 cursor = shortcut->next_node; in assoc_array_gc()
1512 node = assoc_array_ptr_to_node(cursor); in assoc_array_gc()
1541 cursor = ptr; in assoc_array_gc()
1708 cursor = shortcut->back_pointer; in assoc_array_gc()
1709 if (!cursor) in assoc_array_gc()
1713 cursor = ptr; in assoc_array_gc()
1715 BUG_ON(!cursor); in assoc_array_gc()
1716 node = assoc_array_ptr_to_node(cursor); in assoc_array_gc()