Procházet zdrojové kódy

skb: Add skb_peek_next helper

Signed-off-by: Pavel Emelyanov <xemul@parallels.com>
Acked-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Pavel Emelyanov před 13 roky
rodič
revize
da5ef6e51b
1 změnil soubory, kde provedl 18 přidání a 0 odebrání
  1. 18 0
      include/linux/skbuff.h

+ 18 - 0
include/linux/skbuff.h

@@ -876,6 +876,24 @@ static inline struct sk_buff *skb_peek(const struct sk_buff_head *list_)
 	return list;
 }
 
+/**
+ *	skb_peek_next - peek skb following the given one from a queue
+ *	@skb: skb to start from
+ *	@list_: list to peek at
+ *
+ *	Returns %NULL when the end of the list is met or a pointer to the
+ *	next element. The reference count is not incremented and the
+ *	reference is therefore volatile. Use with caution.
+ */
+static inline struct sk_buff *skb_peek_next(struct sk_buff *skb,
+		const struct sk_buff_head *list_)
+{
+	struct sk_buff *next = skb->next;
+	if (next == (struct sk_buff *)list_)
+		next = NULL;
+	return next;
+}
+
 /**
  *	skb_peek_tail - peek at the tail of an &sk_buff_head
  *	@list_: list to peek at