Lines Matching full:list

30  * Circular doubly linked list implementation.
46 * @list: list_head structure to be initialized.
48 * Initializes the list_head to point to itself. If it is a list header,
49 * the result is an empty list.
51 static inline void INIT_LIST_HEAD(struct list_head *list) in INIT_LIST_HEAD() argument
53 list->next = list; in INIT_LIST_HEAD()
54 list->prev = list; in INIT_LIST_HEAD()
60 * This is only for internal list manipulation where we know
76 * @head: list head to add it after
89 * @head: list head to add it before
100 * Delete a list entry by making the prev/next entries
103 * This is only for internal list manipulation where we know
118 * list_del - deletes entry from list.
119 * @entry: the element to delete from the list.
161 * list_move - delete from one list and add as another's head
162 * @list: the entry to move
165 static inline void list_move(struct list_head *list, struct list_head *head) in list_move() argument
167 __list_del_entry(list); in list_move()
168 list_add(list, head); in list_move()
172 * list_move_tail - delete from one list and add as another's tail
173 * @list: the entry to move
176 static inline void list_move_tail(struct list_head *list, in list_move_tail() argument
179 __list_del_entry(list); in list_move_tail()
180 list_add_tail(list, head); in list_move_tail()
184 * list_is_first -- tests whether @list is the first entry in list @head
185 * @list: the entry to test
186 * @head: the head of the list
188 static inline int list_is_first(const struct list_head *list, const struct list_head *head) in list_is_first() argument
190 return list->prev == head; in list_is_first()
194 * list_is_last - tests whether @list is the last entry in list @head
195 * @list: the entry to test
196 * @head: the head of the list
198 static inline int list_is_last(const struct list_head *list, const struct list_head *head) in list_is_last() argument
200 return list->next == head; in list_is_last()
204 * list_is_head - tests whether @list is the list @head
205 * @list: the entry to test
206 * @head: the head of the list
208 static inline int list_is_head(const struct list_head *list, const struct list_head *head) in list_is_head() argument
210 return list == head; in list_is_head()
214 * list_empty - tests whether a list is empty
215 * @head: the list to test.
232 * list_first_entry - get the first element from a list
233 * @ptr: the list head to take the element from.
237 * Note, that list is expected to be not empty.
243 * list_last_entry - get the last element from a list
244 * @ptr: the list head to take the element from.
248 * Note, that list is expected to be not empty.
254 * list_next_entry - get the next element in list
262 * list_prev_entry - get the prev element in list
270 * list_entry_is_head - test if the entry points to the head of the list
272 * @head: the head for your list.
279 * list_for_each_entry - iterate over list of given type
281 * @head: the head for your list.
290 * list_for_each_entry_reverse - iterate backwards over list of given type.
292 * @head: the head for your list.
301 * list_for_each_entry_safe - iterate over list of given type. Safe against removal of list entry
304 * @head: the head for your list.
314 * Double linked lists with a single pointer list head.
315 * Mostly useful for hash tables where the two pointer list head is
329 * hlist_unhashed - Has node been removed from list and reinitialized?
352 * hlist_del - Delete the specified hlist_node from its list
366 * hlist_del_init - Delete the specified hlist_node from its list and initialize
406 * hlist_for_each_entry - iterate over list of given type
408 * @head: the head for your list.
417 * hlist_for_each_entry_safe - iterate over list of given type safe against removal of list entry
420 * @head: the head for your list.