summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJason Wang <jasowang@redhat.com>2016-12-23 22:37:25 +0800
committerDavid S. Miller <davem@davemloft.net>2016-12-23 13:48:54 -0500
commit275be061b33b945cfb120ee8a570f78c3ccafe56 (patch)
tree7f89c6cb0ab4b8898eda6aaea9ef1dbf02d5f2da
parent73b62bd085f4737679ea9afc7867fa5f99ba7d1b (diff)
downloadlinux-275be061b33b945cfb120ee8a570f78c3ccafe56.tar.bz2
virtio-net: correctly xmit linearized page on XDP_TX
After we linearize page, we should xmit this page instead of the page of first buffer which may lead unexpected result. With this patch, we can see correct packet during XDP_TX. Cc: John Fastabend <john.r.fastabend@intel.com> Signed-off-by: Jason Wang <jasowang@redhat.com> Acked-by: John Fastabend <john.r.fastabend@intel.com> Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--drivers/net/virtio_net.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/virtio_net.c b/drivers/net/virtio_net.c
index 1067253b98be..fe4562d395e3 100644
--- a/drivers/net/virtio_net.c
+++ b/drivers/net/virtio_net.c
@@ -572,7 +572,7 @@ static struct sk_buff *receive_mergeable(struct net_device *dev,
if (unlikely(hdr->hdr.gso_type || hdr->hdr.flags))
goto err_xdp;
- act = do_xdp_prog(vi, rq, xdp_prog, page, offset, len);
+ act = do_xdp_prog(vi, rq, xdp_prog, xdp_page, offset, len);
switch (act) {
case XDP_PASS:
if (unlikely(xdp_page != page))