Lines Matching refs:member

91 #define list_entry(ptr, type, member) \  argument
92 ((type *)((char *)(ptr)-(unsigned long)(&((type *)0)->member)))
94 #define list_first_entry(ptr, type, member) \ argument
95 list_entry((ptr)->next, type, member)
97 #define list_last_entry(ptr, type, member) \ argument
98 list_entry((ptr)->prev, type, member)
100 #define list_first_entry_or_null(ptr, type, member) ({ \ argument
103 pos__ != head__ ? list_entry(pos__, type, member) : NULL; \
106 #define list_next_entry(pos, type, member) \ argument
107 list_entry((pos)->member.next, type, member)
109 #define list_prev_entry(pos, type, member) \ argument
110 list_entry((pos)->member.prev, type, member)
112 #define list_for_each_entry(pos, head, type, member) \ argument
113 for (pos = list_entry((head)->next, type, member); \
114 &pos->member != (head); \
115 pos = list_next_entry(pos, type, member))
117 #define list_for_each_entry_safe(pos, n, head, type, member) \ argument
118 for (pos = list_first_entry(head, type, member), \
119 n = list_next_entry(pos, type, member); \
120 &pos->member != (head); \
121 pos = n, n = list_next_entry(n, type, member))
123 #define list_for_each_entry_reverse(pos, head, type, member) \ argument
124 for (pos = list_last_entry(head, type, member); \
125 &pos->member != (head); \
126 pos = list_prev_entry(pos, type, member))
128 #define list_for_each_entry_safe_reverse(pos, n, head, type, member) \ argument
129 for (pos = list_last_entry(head, type, member), \
130 n = list_prev_entry(pos, type, member); \
131 &pos->member != (head); \
132 pos = n, n = list_prev_entry(n, type, member))