Lines Matching refs:member
19 #define container_of(ptr, type, member) ({ \ argument
21 _Static_assert(__same_type(*(ptr), ((type *)0)->member) || \
24 ((type *)(__mptr - offsetof(type, member))); })
228 #define list_entry(ptr, type, member) \ argument
229 container_of(ptr, type, member)
239 #define list_first_entry(ptr, type, member) \ argument
240 list_entry((ptr)->next, type, member)
250 #define list_last_entry(ptr, type, member) \ argument
251 list_entry((ptr)->prev, type, member)
258 #define list_next_entry(pos, member) \ argument
259 list_entry((pos)->member.next, typeof(*(pos)), member)
266 #define list_prev_entry(pos, member) \ argument
267 list_entry((pos)->member.prev, typeof(*(pos)), member)
275 #define list_entry_is_head(pos, head, member) \ argument
276 (&pos->member == (head))
284 #define list_for_each_entry(pos, head, member) \ argument
285 for (pos = list_first_entry(head, typeof(*pos), member); \
286 !list_entry_is_head(pos, head, member); \
287 pos = list_next_entry(pos, member))
295 #define list_for_each_entry_reverse(pos, head, member) \ argument
296 for (pos = list_last_entry(head, typeof(*pos), member); \
297 !list_entry_is_head(pos, head, member); \
298 pos = list_prev_entry(pos, member))
307 #define list_for_each_entry_safe(pos, n, head, member) \ argument
308 for (pos = list_first_entry(head, typeof(*pos), member), \
309 n = list_next_entry(pos, member); \
310 !list_entry_is_head(pos, head, member); \
311 pos = n, n = list_next_entry(n, member))
398 #define hlist_entry(ptr, type, member) container_of(ptr, type, member) argument
400 #define hlist_entry_safe(ptr, type, member) \ argument
402 ____ptr ? hlist_entry(____ptr, type, member) : NULL; \
411 #define hlist_for_each_entry(pos, head, member) \ argument
412 for (pos = hlist_entry_safe((head)->first, typeof(*(pos)), member);\
414 pos = hlist_entry_safe((pos)->member.next, typeof(*(pos)), member))
423 #define hlist_for_each_entry_safe(pos, n, head, member) \ argument
424 for (pos = hlist_entry_safe((head)->first, typeof(*pos), member);\
425 pos && ({ n = pos->member.next; 1; }); \
426 pos = hlist_entry_safe(n, typeof(*pos), member))