Lines Matching full:head

35  *   HEAD|             NODE(S)
94 * @head: struct plist_head variable name
96 #define PLIST_HEAD_INIT(head) \ argument
98 .node_list = LIST_HEAD_INIT((head).node_list) \
103 * @head: name for struct plist_head variable
105 #define PLIST_HEAD(head) \ argument
106 struct plist_head head = PLIST_HEAD_INIT(head)
122 * @head: &struct plist_head pointer
125 plist_head_init(struct plist_head *head) in plist_head_init() argument
127 INIT_LIST_HEAD(&head->node_list); in plist_head_init()
142 extern void plist_add(struct plist_node *node, struct plist_head *head);
143 extern void plist_del(struct plist_node *node, struct plist_head *head);
145 extern void plist_requeue(struct plist_node *node, struct plist_head *head);
150 * @head: the head for your list
152 #define plist_for_each(pos, head) \ argument
153 list_for_each_entry(pos, &(head)->node_list, node_list)
158 * @head: the head for your list
162 #define plist_for_each_continue(pos, head) \ argument
163 list_for_each_entry_continue(pos, &(head)->node_list, node_list)
169 * @head: the head for your list
173 #define plist_for_each_safe(pos, n, head) \ argument
174 list_for_each_entry_safe(pos, n, &(head)->node_list, node_list)
179 * @head: the head for your list
182 #define plist_for_each_entry(pos, head, mem) \ argument
183 list_for_each_entry(pos, &(head)->node_list, mem.node_list)
188 * @head: the head for your list
194 #define plist_for_each_entry_continue(pos, head, m) \ argument
195 list_for_each_entry_continue(pos, &(head)->node_list, m.node_list)
201 * @head: the head for your list
206 #define plist_for_each_entry_safe(pos, n, head, m) \ argument
207 list_for_each_entry_safe(pos, n, &(head)->node_list, m.node_list)
211 * @head: &struct plist_head pointer
213 static inline int plist_head_empty(const struct plist_head *head) in plist_head_empty() argument
215 return list_empty(&head->node_list); in plist_head_empty()
231 * @head: the &struct plist_head pointer
236 # define plist_first_entry(head, type, member) \ argument
238 WARN_ON(plist_head_empty(head)); \
239 container_of(plist_first(head), type, member); \
242 # define plist_first_entry(head, type, member) \ argument
243 container_of(plist_first(head), type, member)
248 * @head: the &struct plist_head pointer
253 # define plist_last_entry(head, type, member) \ argument
255 WARN_ON(plist_head_empty(head)); \
256 container_of(plist_last(head), type, member); \
259 # define plist_last_entry(head, type, member) \ argument
260 container_of(plist_last(head), type, member)
279 * @head: the &struct plist_head pointer
283 static inline struct plist_node *plist_first(const struct plist_head *head) in plist_first() argument
285 return list_entry(head->node_list.next, in plist_first()
291 * @head: the &struct plist_head pointer
295 static inline struct plist_node *plist_last(const struct plist_head *head) in plist_last() argument
297 return list_entry(head->node_list.prev, in plist_last()