mirror of
https://git.proxmox.com/git/mirror_lxc
synced 2025-08-08 02:31:33 +00:00
Allows to enqueue list element instead of pushing on top of the list
From: Daniel Lezcano <dlezcano@fr.ibm.com> Added the list_add_tail function to add an element at the end of the list. Signed-off-by: Daniel Lezcano <dlezcano@fr.ibm.com>
This commit is contained in:
parent
85cbaa06f9
commit
da9e3794b5
@ -7,7 +7,7 @@ struct lxc_list {
|
|||||||
struct lxc_list *prev;
|
struct lxc_list *prev;
|
||||||
};
|
};
|
||||||
|
|
||||||
#define lxc_init_list(l) { .next = l, .prev = l, }
|
#define lxc_init_list(l) { .next = l, .prev = l }
|
||||||
|
|
||||||
#define lxc_list_for_each(__iterator, __list) \
|
#define lxc_list_for_each(__iterator, __list) \
|
||||||
for (__iterator = (__list)->next; \
|
for (__iterator = (__list)->next; \
|
||||||
@ -35,13 +35,25 @@ static inline int lxc_list_empty(struct lxc_list *list)
|
|||||||
return list == list->next;
|
return list == list->next;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
static inline void __lxc_list_add(struct lxc_list *new,
|
||||||
|
struct lxc_list *prev,
|
||||||
|
struct lxc_list *next)
|
||||||
|
{
|
||||||
|
next->prev = new;
|
||||||
|
new->next = next;
|
||||||
|
new->prev = prev;
|
||||||
|
prev->next = new;
|
||||||
|
}
|
||||||
|
|
||||||
static inline void lxc_list_add(struct lxc_list *head, struct lxc_list *list)
|
static inline void lxc_list_add(struct lxc_list *head, struct lxc_list *list)
|
||||||
{
|
{
|
||||||
struct lxc_list *next = head->next;
|
__lxc_list_add(list, head, head->next);
|
||||||
next->prev = list;
|
}
|
||||||
list->next = next;
|
|
||||||
list->prev = head;
|
static inline void lxc_list_add_tail(struct lxc_list *head,
|
||||||
head->next = list;
|
struct lxc_list *list)
|
||||||
|
{
|
||||||
|
__lxc_list_add(list, head->prev, head);
|
||||||
}
|
}
|
||||||
|
|
||||||
static inline void lxc_list_del(struct lxc_list *list)
|
static inline void lxc_list_del(struct lxc_list *list)
|
||||||
|
Loading…
Reference in New Issue
Block a user