v2: - Documentation in vswitch.xml and section in ovs-ofctl(8) - New test in ovs-ofctl.at to check OXM/NXM availability
This series accounts for various upstream kernel changes and then introduces VXLAN-GBP: Introduces support for the group policy extension to the VXLAN virtual port. The extension is disabled by default and only enabled if the user has provided the respective configuration. ovs-vsctl add-port br0 vxlan0 -- \ set Interface vxlan0 type=vxlan options:exts=gbp The configuration interface to enable the extension is based on a new attribute OVS_VXLAN_EXT_GBP nested inside OVS_TUNNEL_ATTR_EXTENSION which can carry additional extensions as needed in the future. The group policy metadata is stored as binary blob (struct ovs_vxlan_opts) internally just like Geneve options but transported as nested Netlink attributes to user space. Renames the existing TUNNEL_OPTIONS_PRESENT to TUNNEL_GENEVE_OPT with the binary value kept intact, a new flag TUNNEL_VXLAN_OPT is introduced. The attributes OVS_TUNNEL_KEY_ATTR_VXLAN_OPTS and existing OVS_TUNNEL_KEY_ATTR_GENEVE_OPTS are implemented mutually exclusive. Madhu Challa (1): ofproto: Add NXM_NX_TUN_GBP_ID and NXM_NX_TUN_GBP_FLAGS Thomas Graf (10): datapath: Account for "rename vlan_tx_* helpers since "tx" is misleading there" datapath: Account for now exposed VXLAN definitions datapath: Account for "vxlan: Group Policy extension" datapath: Rename GENEVE_TUN_OPTS() to TUN_METADATA_OPTS() datapath: Allow for any level of nesting in flow attributes datapath: Support VXLAN Group Policy extension datapath: Account for "genetlink: pass only network namespace to genl_has_listeners()" datapath: Account for "netlink: make nlmsg_end() and genlmsg_end() void" datapath: Allow building against 3.19.x tunnel: Provide framework for tunnel extensions for VXLAN-GBP and others FAQ.md | 1 + NEWS | 3 +- acinclude.m4 | 11 +- datapath/Modules.mk | 3 +- datapath/actions.c | 4 +- datapath/datapath.c | 16 +- datapath/flow.c | 6 +- datapath/flow.h | 15 +- datapath/flow_netlink.c | 288 +++++++++++++++------- datapath/linux/compat/gso.c | 4 +- datapath/linux/compat/include/linux/if_vlan.h | 5 + datapath/linux/compat/include/linux/openvswitch.h | 10 + datapath/linux/compat/include/net/genetlink.h | 18 +- datapath/linux/compat/include/net/ip_tunnels.h | 16 +- datapath/linux/compat/include/net/vxlan.h | 111 +++++++-- datapath/linux/compat/netdevice.c | 2 +- datapath/linux/compat/skbuff-openvswitch.c | 6 +- datapath/linux/compat/vxlan.c | 95 +++++-- datapath/vport-geneve.c | 12 +- datapath/vport-gre.c | 6 +- datapath/vport-internal_dev.c | 4 +- datapath/vport-vxlan.c | 92 ++++++- datapath/vport-vxlan.h | 11 + datapath/vport.c | 2 +- lib/dpif-netlink.c | 20 +- lib/flow.c | 16 +- lib/flow.h | 6 +- lib/match.c | 37 ++- lib/match.h | 4 + lib/meta-flow.c | 36 +++ lib/meta-flow.h | 28 +++ lib/netdev-vport.c | 18 ++ lib/netdev.h | 2 + lib/nx-match.c | 6 +- lib/odp-util.c | 36 ++- lib/odp-util.h | 3 +- lib/ofp-print.c | 9 + lib/ofp-util.c | 10 +- lib/packets.h | 3 + ofproto/ofproto-dpif-xlate.c | 2 +- tests/odp.at | 16 +- tests/ofproto.at | 6 +- tests/ovs-ofctl.at | 4 + tests/tunnel.at | 82 +++--- utilities/ovs-ofctl.8.in | 34 +++ vswitchd/vswitch.xml | 20 ++ 46 files changed, 888 insertions(+), 251 deletions(-) create mode 100644 datapath/vport-vxlan.h -- 1.9.3 _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev