Lines Matching refs:node
63 struct ulist_node *node; in ulist_fini() local
66 list_for_each_entry_safe(node, next, &ulist->nodes, list) { in ulist_fini()
67 kfree(node); in ulist_fini()
135 static void ulist_rbtree_erase(struct ulist *ulist, struct ulist_node *node) in ulist_rbtree_erase() argument
137 rb_erase(&node->rb_node, &ulist->root); in ulist_rbtree_erase()
138 list_del(&node->list); in ulist_rbtree_erase()
139 kfree(node); in ulist_rbtree_erase()
195 struct ulist_node *node; in ulist_add_merge() local
197 node = ulist_rbtree_search(ulist, val); in ulist_add_merge()
198 if (node) { in ulist_add_merge()
200 *old_aux = node->aux; in ulist_add_merge()
203 node = kmalloc(sizeof(*node), gfp_mask); in ulist_add_merge()
204 if (!node) in ulist_add_merge()
207 node->val = val; in ulist_add_merge()
208 node->aux = aux; in ulist_add_merge()
210 ret = ulist_rbtree_insert(ulist, node); in ulist_add_merge()
212 list_add_tail(&node->list, &ulist->nodes); in ulist_add_merge()
230 struct ulist_node *node; in ulist_del() local
232 node = ulist_rbtree_search(ulist, val); in ulist_del()
234 if (!node) in ulist_del()
237 if (node->aux != aux) in ulist_del()
241 ulist_rbtree_erase(ulist, node); in ulist_del()
263 struct ulist_node *node; in ulist_next() local
274 node = list_entry(uiter->cur_list, struct ulist_node, list); in ulist_next()
275 return node; in ulist_next()