Message ID | 1504114378.11498.124.camel@edumazet-glaptop3.roam.corp.google.com |
---|---|
State | Accepted, archived |
Delegated to: | David Miller |
Headers | show |
Series | [net-next] xen-netfront: be more drop monitor friendly | expand |
From: Eric Dumazet <eric.dumazet@gmail.com> Date: Wed, 30 Aug 2017 10:32:58 -0700 > From: Eric Dumazet <edumazet@google.com> > > xennet_start_xmit() might copy skb with inappropriate layout > into a fresh one. > > Old skb is freed, and at this point it is not a drop, but > a consume. New skb will then be either consumed or dropped. > > Signed-off-by: Eric Dumazet <edumazet@google.com> Applied, thanks Eric.
diff --git a/drivers/net/xen-netfront.c b/drivers/net/xen-netfront.c index 7b61adb6270c..523387e71a80 100644 --- a/drivers/net/xen-netfront.c +++ b/drivers/net/xen-netfront.c @@ -611,7 +611,7 @@ static int xennet_start_xmit(struct sk_buff *skb, struct net_device *dev) nskb = skb_copy(skb, GFP_ATOMIC); if (!nskb) goto drop; - dev_kfree_skb_any(skb); + dev_consume_skb_any(skb); skb = nskb; page = virt_to_page(skb->data); offset = offset_in_page(skb->data);