Lines Matching +full:root +full:- +full:node

1 /* SPDX-License-Identifier: GPL-2.0 */
54 return n != 0 && (n & (n - 1)) == 0; in is_power_of_two_u64()
73 static inline struct rb_node *rb_simple_search(struct rb_root *root, u64 bytenr) in rb_simple_search() argument
75 struct rb_node *node = root->rb_node; in rb_simple_search() local
78 while (node) { in rb_simple_search()
79 entry = rb_entry(node, struct rb_simple_node, rb_node); in rb_simple_search()
81 if (bytenr < entry->bytenr) in rb_simple_search()
82 node = node->rb_left; in rb_simple_search()
83 else if (bytenr > entry->bytenr) in rb_simple_search()
84 node = node->rb_right; in rb_simple_search()
86 return node; in rb_simple_search()
92 * Search @root from an entry that starts or comes after @bytenr.
94 * @root: the root to search.
100 static inline struct rb_node *rb_simple_search_first(struct rb_root *root, in rb_simple_search_first() argument
103 struct rb_node *node = root->rb_node, *ret = NULL; in rb_simple_search_first() local
106 while (node) { in rb_simple_search_first()
107 entry = rb_entry(node, struct rb_simple_node, rb_node); in rb_simple_search_first()
109 if (bytenr < entry->bytenr) { in rb_simple_search_first()
110 if (!ret || entry->bytenr < ret_entry->bytenr) { in rb_simple_search_first()
111 ret = node; in rb_simple_search_first()
115 node = node->rb_left; in rb_simple_search_first()
116 } else if (bytenr > entry->bytenr) { in rb_simple_search_first()
117 node = node->rb_right; in rb_simple_search_first()
119 return node; in rb_simple_search_first()
126 static inline struct rb_node *rb_simple_insert(struct rb_root *root, u64 bytenr, in rb_simple_insert() argument
127 struct rb_node *node) in rb_simple_insert() argument
129 struct rb_node **p = &root->rb_node; in rb_simple_insert()
137 if (bytenr < entry->bytenr) in rb_simple_insert()
138 p = &(*p)->rb_left; in rb_simple_insert()
139 else if (bytenr > entry->bytenr) in rb_simple_insert()
140 p = &(*p)->rb_right; in rb_simple_insert()
145 rb_link_node(node, parent, p); in rb_simple_insert()
146 rb_insert_color(node, root); in rb_simple_insert()