Lines Matching refs:parent
69 struct rb_node *parent = NULL; in rb_add_augmented_cached() local
73 parent = *link; in rb_add_augmented_cached()
74 if (less(node, parent)) { in rb_add_augmented_cached()
75 link = &parent->rb_left; in rb_add_augmented_cached()
77 link = &parent->rb_right; in rb_add_augmented_cached()
82 rb_link_node(node, parent, link); in rb_add_augmented_cached()
83 augment->propagate(parent, NULL); /* suboptimal */ in rb_add_augmented_cached()
196 struct rb_node *parent, struct rb_root *root) in __rb_change_child() argument
198 if (parent) { in __rb_change_child()
199 if (parent->rb_left == old) in __rb_change_child()
200 WRITE_ONCE(parent->rb_left, new); in __rb_change_child()
202 WRITE_ONCE(parent->rb_right, new); in __rb_change_child()
209 struct rb_node *parent, struct rb_root *root) in __rb_change_child_rcu() argument
211 if (parent) { in __rb_change_child_rcu()
212 if (parent->rb_left == old) in __rb_change_child_rcu()
213 rcu_assign_pointer(parent->rb_left, new); in __rb_change_child_rcu()
215 rcu_assign_pointer(parent->rb_right, new); in __rb_change_child_rcu()
220 extern void __rb_erase_color(struct rb_node *parent, struct rb_root *root,
229 struct rb_node *parent, *rebalance; in __rb_erase_augmented() local
241 parent = __rb_parent(pc); in __rb_erase_augmented()
242 __rb_change_child(node, child, parent, root); in __rb_erase_augmented()
247 rebalance = __rb_is_black(pc) ? parent : NULL; in __rb_erase_augmented()
248 tmp = parent; in __rb_erase_augmented()
252 parent = __rb_parent(pc); in __rb_erase_augmented()
253 __rb_change_child(node, tmp, parent, root); in __rb_erase_augmented()
255 tmp = parent; in __rb_erase_augmented()
270 parent = successor; in __rb_erase_augmented()
290 parent = successor; in __rb_erase_augmented()
295 WRITE_ONCE(parent->rb_left, child2); in __rb_erase_augmented()
300 augment->propagate(parent, successor); in __rb_erase_augmented()
312 rb_set_parent_color(child2, parent, RB_BLACK); in __rb_erase_augmented()
315 rebalance = rb_is_black(successor) ? parent : NULL; in __rb_erase_augmented()