[ovs-dev] [PATCH v3 0/2] netdev-linux: Read packet auxdata to obtain vlan_tid
Simon Horman
horms at verge.net.au
Mon Dec 16 08:57:50 UTC 2013
If VLAN acceleration is used when the kernel receives a packet
then the outer-most VLAN tag will not be present in the packet
when it is received by netdev-linux. Rather, it will be present
in auxdata.
The purpose of this series is to obtain the vlan_tid from auxdata
as appropriate and push it onto the packet. In order to allow
the push to be performed efficiently netdev_class is updated to
provide an ofpbuf * argument to rx_recv().
Key Changes between v2 and v3:
* On success, update struct ofpbuf size inside netdev_class rx_recv
implementation and return 0. This moves logic from the caller.
* Document that it is recommended that the struct ofpbuf should provide
extra tailroom for a VLAN header. This will be used by a subsequent patch.
* Update BSD code
* Limit to reading one VLAN from auxdata
Key Changes between v1 and v2:
* Update netdev_class to provide an ofpbuf * argument to rx_recv()
Simon Horman (2):
netdev_class: Pass a struct ofpbuf * to rx_recv()
netdev-linux: Read packet auxdata to obtain vlan_tid
include/sparse/sys/socket.h | 1 +
lib/netdev-bsd.c | 24 +++++----
lib/netdev-dummy.c | 9 ++--
lib/netdev-linux.c | 115 ++++++++++++++++++++++++++++++++++++++------
lib/netdev-provider.h | 18 ++++---
lib/netdev.c | 4 +-
6 files changed, 134 insertions(+), 37 deletions(-)
--
1.8.4
More information about the dev
mailing list