veth: implement ndo_set_rx_headroom
authorPaolo Abeni <pabeni@redhat.com>
Fri, 26 Feb 2016 09:45:41 +0000 (10:45 +0100)
committerDavid S. Miller <davem@davemloft.net>
Tue, 1 Mar 2016 20:54:31 +0000 (15:54 -0500)
commit163e529200af7b7521fbde5dbcc653cf3ce597df
tree2530b68faffa4a6cb301fb71c64cab0ee69f3747
parenteaea34b23c46bf17b4a5638be69ab3561854f34b
veth: implement ndo_set_rx_headroom

The rx headroom for veth dev is the peer device needed_headroom.
Avoid ping-pong updates setting the private flag IFF_PHONY_HEADROOM.

This avoids skb head reallocation when forwarding from a veth dev
towards a device adding some kind of encapsulation.

When transmitting frames below the MTU size towards a vxlan device,
this gives about 10% performance speed-up when OVS is used to connect
the veth and the vxlan device and a little more when using a
plain Linux bridge.

Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/veth.c