|
@@ -867,7 +867,7 @@ static void neigh_invalidate(struct neighbour *neigh)
|
|
static void neigh_probe(struct neighbour *neigh)
|
|
static void neigh_probe(struct neighbour *neigh)
|
|
__releases(neigh->lock)
|
|
__releases(neigh->lock)
|
|
{
|
|
{
|
|
- struct sk_buff *skb = skb_peek(&neigh->arp_queue);
|
|
|
|
|
|
+ struct sk_buff *skb = skb_peek_tail(&neigh->arp_queue);
|
|
/* keep skb alive even if arp_queue overflows */
|
|
/* keep skb alive even if arp_queue overflows */
|
|
if (skb)
|
|
if (skb)
|
|
skb = skb_copy(skb, GFP_ATOMIC);
|
|
skb = skb_copy(skb, GFP_ATOMIC);
|