]> git.baikalelectronics.ru Git - kernel.git/commit
virtio-net: keep vnet header zeroed after processing XDP
authorJason Wang <jasowang@redhat.com>
Thu, 29 Nov 2018 05:53:16 +0000 (13:53 +0800)
committerDavid S. Miller <davem@davemloft.net>
Sat, 1 Dec 2018 01:25:03 +0000 (17:25 -0800)
commit98033f8a853fcb97fc43049bc13ceaf4362e937f
treea9e1fcd3efb1351fd3baa581bcec8ec205ba38d3
parente280c95d9ae7564e7fdd01629dd1f62d95b6a485
virtio-net: keep vnet header zeroed after processing XDP

We copy vnet header unconditionally in page_to_skb() this is wrong
since XDP may modify the packet data. So let's keep a zeroed vnet
header for not confusing the conversion between vnet header and skb
metadata.

In the future, we should able to detect whether or not the packet was
modified and keep using the vnet header when packet was not touched.

Fixes: 571eac349c8d ("virtio_net: Add XDP support")
Reported-by: Pavel Popa <pashinho1990@gmail.com>
Signed-off-by: Jason Wang <jasowang@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/virtio_net.c