mirror of
https://github.com/torvalds/linux.git
synced 2024-11-11 06:31:49 +00:00
[SKB]: Introduce skb_queue_walk_safe()
This patch provides a method for walking skb lists while inserting or removing skbs from the list. Signed-off-by: James Chapman <jchapman@katalix.com> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
04b090d50c
commit
46f8914e53
@ -1471,6 +1471,11 @@ static inline int pskb_trim_rcsum(struct sk_buff *skb, unsigned int len)
|
|||||||
prefetch(skb->next), (skb != (struct sk_buff *)(queue)); \
|
prefetch(skb->next), (skb != (struct sk_buff *)(queue)); \
|
||||||
skb = skb->next)
|
skb = skb->next)
|
||||||
|
|
||||||
|
#define skb_queue_walk_safe(queue, skb, tmp) \
|
||||||
|
for (skb = (queue)->next, tmp = skb->next; \
|
||||||
|
skb != (struct sk_buff *)(queue); \
|
||||||
|
skb = tmp, tmp = skb->next)
|
||||||
|
|
||||||
#define skb_queue_reverse_walk(queue, skb) \
|
#define skb_queue_reverse_walk(queue, skb) \
|
||||||
for (skb = (queue)->prev; \
|
for (skb = (queue)->prev; \
|
||||||
prefetch(skb->prev), (skb != (struct sk_buff *)(queue)); \
|
prefetch(skb->prev), (skb != (struct sk_buff *)(queue)); \
|
||||||
|
Loading…
Reference in New Issue
Block a user