Home | History | Annotate | Download | only in linux

Lines Matching refs:HEAD

47 init_llist_head(struct llist_head *head)
50 head->first = NULL;
56 llist_empty(struct llist_head *head)
60 empty = (atomic_load_acquire(&head->first) == NULL);
66 llist_add(struct llist_node *node, struct llist_head *head)
71 first = head->first;
74 } while (atomic_cas_ptr(&head->first, first, node) != first);
81 struct llist_head *head)
86 next = atomic_load_consume(&head->first);
88 } while (atomic_cas_ptr(&head->first, next, first) != next);
94 llist_del_all(struct llist_head *head)
98 first = atomic_swap_ptr(&head->first, NULL);
105 llist_del_first(struct llist_head *head)
110 first = atomic_load_consume(&head->first);
113 } while (atomic_cas_ptr(&head->first, first, first->next)
127 #define llist_for_each_safe(NODE, TMP, HEAD) \
128 for ((NODE) = (HEAD); \