[SKB]: __skb_queue_tail = __skb_insert before
This expresses __skb_queue_tail() in terms of __skb_insert(), using __skb_insert_before() as auxiliary function. Signed-off-by: Gerrit Renker <gerrit@erg.abdn.ac.uk> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
7de6c03336
commit
f5572855ec
|
@ -700,6 +700,13 @@ static inline void __skb_queue_after(struct sk_buff_head *list,
|
||||||
extern void skb_append(struct sk_buff *old, struct sk_buff *newsk,
|
extern void skb_append(struct sk_buff *old, struct sk_buff *newsk,
|
||||||
struct sk_buff_head *list);
|
struct sk_buff_head *list);
|
||||||
|
|
||||||
|
static inline void __skb_queue_before(struct sk_buff_head *list,
|
||||||
|
struct sk_buff *next,
|
||||||
|
struct sk_buff *newsk)
|
||||||
|
{
|
||||||
|
__skb_insert(newsk, next->prev, next, list);
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* __skb_queue_head - queue a buffer at the list head
|
* __skb_queue_head - queue a buffer at the list head
|
||||||
* @list: list to use
|
* @list: list to use
|
||||||
|
@ -731,14 +738,7 @@ extern void skb_queue_tail(struct sk_buff_head *list, struct sk_buff *newsk);
|
||||||
static inline void __skb_queue_tail(struct sk_buff_head *list,
|
static inline void __skb_queue_tail(struct sk_buff_head *list,
|
||||||
struct sk_buff *newsk)
|
struct sk_buff *newsk)
|
||||||
{
|
{
|
||||||
struct sk_buff *prev, *next;
|
__skb_queue_before(list, (struct sk_buff *)list, newsk);
|
||||||
|
|
||||||
list->qlen++;
|
|
||||||
next = (struct sk_buff *)list;
|
|
||||||
prev = next->prev;
|
|
||||||
newsk->next = next;
|
|
||||||
newsk->prev = prev;
|
|
||||||
next->prev = prev->next = newsk;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|
Loading…
Reference in New Issue