Lines Matching refs:node

73 void plist_add(struct plist_node *node, struct plist_head *head)  in plist_add()  argument
79 WARN_ON(!plist_node_empty(node)); in plist_add()
80 WARN_ON(!list_empty(&node->prio_list)); in plist_add()
89 if (node->prio < iter->prio) { in plist_add()
92 } else if (node->prio >= reverse_iter->prio) { in plist_add()
108 if (!prev || prev->prio != node->prio) in plist_add()
109 list_add_tail(&node->prio_list, &iter->prio_list); in plist_add()
111 list_add_tail(&node->node_list, node_next); in plist_add()
122 void plist_del(struct plist_node *node, struct plist_head *head) in plist_del() argument
126 if (!list_empty(&node->prio_list)) { in plist_del()
127 if (node->node_list.next != &head->node_list) { in plist_del()
130 next = list_entry(node->node_list.next, in plist_del()
135 list_add(&next->prio_list, &node->prio_list); in plist_del()
137 list_del_init(&node->prio_list); in plist_del()
140 list_del_init(&node->node_list); in plist_del()
155 void plist_requeue(struct plist_node *node, struct plist_head *head) in plist_requeue() argument
162 BUG_ON(plist_node_empty(node)); in plist_requeue()
164 if (node == plist_last(head)) in plist_requeue()
167 iter = plist_next(node); in plist_requeue()
169 if (node->prio != iter->prio) in plist_requeue()
172 plist_del(node, head); in plist_requeue()
186 if (node->prio != iter->prio) { in plist_requeue()
192 list_add_tail(&node->node_list, node_next); in plist_requeue()
234 static void __init plist_test_requeue(struct plist_node *node) in plist_test_requeue() argument
236 plist_requeue(node, &test_head); in plist_test_requeue()
238 if (node != plist_last(&test_head)) in plist_test_requeue()
239 BUG_ON(node->prio == plist_next(node)->prio); in plist_test_requeue()