Lines Matching full:next

61 	struct list_head *next;  member
64 #define LIST_HEAD_INIT(name) { .prev = &(name), .next = &(name) }
70 head->next = head; in INIT_LIST_HEAD()
76 return head->next; in list_first()
88 return node->next; in list_next()
100 return (head->next == head); in list_empty()
109 if (head->next != head->prev) in list_is_singular()
116 struct list_head *next) in __list_add_between() argument
118 prev->next = node; in __list_add_between()
120 node->next = next; in __list_add_between()
121 next->prev = node; in __list_add_between()
127 __list_add_between(head, node, head->next); in list_add()
139 entry->prev->next = entry->next; in list_del()
140 entry->next->prev = entry->prev; in list_del()
145 struct list_head *next) in __list_splice_between() argument
147 struct list_head *first = list->next; in __list_splice_between()
151 prev->next = first; in __list_splice_between()
153 last->next = next; in __list_splice_between()
154 next->prev = last; in __list_splice_between()
161 __list_splice_between(head, list, head->next); in list_splice()
189 old->prev->next = new; in list_replace()
190 new->next = old->next; in list_replace()
191 old->next->prev = new; in list_replace()
216 #define list_for_each_safe(VAR, NEXT, HEAD) \ argument
218 ((VAR) != (HEAD)) && ((NEXT) = list_next((VAR)), 1); \
219 (VAR) = (NEXT))
233 #define list_for_each_entry_safe(VAR, NEXT, HEAD, FIELD) \ argument
236 ((NEXT) = list_entry(list_next(&(VAR)->FIELD), \
238 (VAR) = (NEXT))
250 #define list_for_each_entry_safe_from(VAR, NEXT, HEAD, FIELD) \ argument
253 ((NEXT) = list_next_entry((VAR), FIELD)); \
254 (VAR) = (NEXT))