Lines Matching refs:next
43 struct hlist_node *next, **pprev;
66 h->next = NULL;
82 struct hlist_node *next = n->next;
85 WRITE_ONCE(*pprev, next);
86 if (next) {
87 next->pprev = pprev;
94 n->next = (struct hlist_node *)LIST_POISON1;
109 n->next = first;
111 first->pprev = &n->next;
117 static inline void hlist_add_before(struct hlist_node *n, struct hlist_node *next)
119 n->pprev = next->pprev;
120 n->next = next;
121 next->pprev = &n->next;
127 n->next = prev->next;
128 WRITE_ONCE(prev->next, n);
129 n->pprev = &prev->next;
130 if (n->next) {
131 n->next->pprev = &n->next;
137 n->pprev = &n->next;
142 return h->pprev == &h->next;
147 return !n->next && n->pprev == &h->first;
161 #define hlist_for_each(pos, head) for ((pos) = (head)->first; (pos); pos = (pos)->next)
165 n = (pos)->next; \
179 pos = hlist_entry_safe((pos)->member.next, typeof(*(pos)), member)) \
184 for ((pos) = hlist_entry_safe((pos)->member.next, typeof(*(pos)), member); pos; \
185 pos = hlist_entry_safe((pos)->member.next, typeof(*(pos)), member)) \
190 for (; pos; pos = hlist_entry_safe((pos)->member.next, typeof(*(pos)), member)) \
196 n = (pos)->member.next; \