Lines Matching refs:head

61 static inline void list_add(struct list_head *new, struct list_head *head)  in list_add()  argument
63 __list_add(new, head, head->next); in list_add()
74 static inline void list_add_tail(struct list_head *new, struct list_head *head) in list_add_tail() argument
76 __list_add(new, head->prev, head); in list_add_tail()
143 static inline void list_move(struct list_head *list, struct list_head *head) in list_move() argument
146 list_add(list, head); in list_move()
155 struct list_head *head) in list_move_tail() argument
158 list_add_tail(list, head); in list_move_tail()
167 const struct list_head *head) in list_is_last() argument
169 return list->next == head; in list_is_last()
176 static inline int list_empty(const struct list_head *head) in list_empty() argument
178 return head->next == head; in list_empty()
194 static inline int list_empty_careful(const struct list_head *head) in list_empty_careful() argument
196 struct list_head *next = head->next; in list_empty_careful()
197 return (next == head) && (next == head->prev); in list_empty_careful()
204 static inline int list_is_singular(const struct list_head *head) in list_is_singular() argument
206 return !list_empty(head) && (head->next == head->prev); in list_is_singular()
210 struct list_head *head, struct list_head *entry) in __list_cut_position() argument
213 list->next = head->next; in __list_cut_position()
217 head->next = new_first; in __list_cut_position()
218 new_first->prev = head; in __list_cut_position()
236 struct list_head *head, struct list_head *entry) in list_cut_position() argument
238 if (list_empty(head)) in list_cut_position()
240 if (list_is_singular(head) && in list_cut_position()
241 (head->next != entry && head != entry)) in list_cut_position()
243 if (entry == head) in list_cut_position()
246 __list_cut_position(list, head, entry); in list_cut_position()
269 struct list_head *head) in list_splice() argument
272 __list_splice(list, head, head->next); in list_splice()
281 struct list_head *head) in list_splice_tail() argument
284 __list_splice(list, head->prev, head); in list_splice_tail()
295 struct list_head *head) in list_splice_init() argument
298 __list_splice(list, head, head->next); in list_splice_init()
312 struct list_head *head) in list_splice_tail_init() argument
315 __list_splice(list, head->prev, head); in list_splice_tail_init()
356 #define list_for_each(pos, head) \ argument
357 for (pos = (head)->next; prefetch(pos->next), pos != (head); \
370 #define __list_for_each(pos, head) \ argument
371 for (pos = (head)->next; pos != (head); pos = pos->next)
378 #define list_for_each_prev(pos, head) \ argument
379 for (pos = (head)->prev; prefetch(pos->prev), pos != (head); \
388 #define list_for_each_safe(pos, n, head) \ argument
389 for (pos = (head)->next, n = pos->next; pos != (head); \
398 #define list_for_each_prev_safe(pos, n, head) \ argument
399 for (pos = (head)->prev, n = pos->prev; \
400 prefetch(pos->prev), pos != (head); \
409 #define list_for_each_entry(pos, head, member) \ argument
410 for (pos = list_entry((head)->next, typeof(*pos), member); \
411 prefetch(pos->member.next), &pos->member != (head); \
420 #define list_for_each_entry_reverse(pos, head, member) \ argument
421 for (pos = list_entry((head)->prev, typeof(*pos), member); \
422 prefetch(pos->member.prev), &pos->member != (head); \
433 #define list_prepare_entry(pos, head, member) \ argument
434 ((pos) ? : list_entry(head, typeof(*pos), member))
445 #define list_for_each_entry_continue(pos, head, member) \ argument
447 prefetch(pos->member.next), &pos->member != (head); \
459 #define list_for_each_entry_continue_reverse(pos, head, member) \ argument
461 prefetch(pos->member.prev), &pos->member != (head); \
472 #define list_for_each_entry_from(pos, head, member) \ argument
473 for (; prefetch(pos->member.next), &pos->member != (head); \
483 #define list_for_each_entry_safe(pos, n, head, member) \ argument
484 for (pos = list_entry((head)->next, typeof(*pos), member), \
486 &pos->member != (head); \
499 #define list_for_each_entry_safe_continue(pos, n, head, member) \ argument
502 &pos->member != (head); \
515 #define list_for_each_entry_safe_from(pos, n, head, member) \ argument
517 &pos->member != (head); \
530 #define list_for_each_entry_safe_reverse(pos, n, head, member) \ argument
531 for (pos = list_entry((head)->prev, typeof(*pos), member), \
533 &pos->member != (head); \
627 #define hlist_for_each(pos, head) \ argument
628 for (pos = (head)->first; pos && ({ prefetch(pos->next); 1; }); \
631 #define hlist_for_each_safe(pos, n, head) \ argument
632 for (pos = (head)->first; pos && ({ n = pos->next; 1; }); \
642 #define hlist_for_each_entry(tpos, pos, head, member) \ argument
643 for (pos = (head)->first; \
679 #define hlist_for_each_entry_safe(tpos, pos, n, head, member) \ argument
680 for (pos = (head)->first; \