list: introduce list_last_entry_or_null()
PATCH 1/6 list: introduce list_last_entry_or_null()
From: Jie Liu <[email protected]>
Introduce a trivial helper list_last_entry_or_null() to fetch the last entry from a list, return NULL if the list is empty.
Signed-off-by Jie Liu <[email protected]>
--- include/linux/list.h | 11 +++++++++++ 1 file changed, 11 insertions(+)
include/linux/list.h +11 -0
@@ -384,6 +384,17 @@ static inline void list_splice_tail_init(struct list_head *list, (!list_empty (ptr) ?list_first_entry (ptr, type, member) :NULL )/** +* list_last_entry_or_null - get the last element from a list +* @ptr: the list head to take the element from. +* @type: the type of the struct this is embedded in. +* @member: the name of the list_struct within the struct. +* +* Note that if the list is empty, it returns NULL. + */ +#define list_last_entry_or_null (ptr, type, member) \ + (!list_empty(ptr) ? list_last_entry(ptr, type, member) : NULL) + +/** * list_next_entry - get the next element in list * @pos: the type * to cursor * @member: the name of the list_struct within the struct.
Signature · 1 line
1.8.3.2