linuxlist: add macro to get last element of a list

It is not be obvious on the first look that ->prev actually points to the last
element of a list, lets add a macro for that to make the API easier to use

Change-Id: Icf455bf6ba9d60bd311af17c9e80febaa42cacc9
Related: SYS#4971
This commit is contained in:
Philipp Maier 2021-06-30 17:06:16 +02:00
parent 5e040bf1f1
commit ff84de7e18
1 changed files with 6 additions and 0 deletions

View File

@ -238,6 +238,12 @@ static inline void llist_splice_init(struct llist_head *llist,
#define llist_last_entry(ptr, type, member) \
llist_entry((ptr)->prev, type, member)
/*! Return the last element of the list.
* \param head the llist head of the list.
* \returns last element of the list, head if the list is empty.
*/
#define llist_last(head) (head)->prev
/*! Get the first element from a list, or NULL.
* \param ptr the list head to take the element from.
* \param type the type of the struct this is embedded in.