[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1467827996-32547-1-git-send-email-simon.horman@netronome.com>
Date: Wed, 6 Jul 2016 19:59:50 +0200
From: Simon Horman <simon.horman@...ronome.com>
To: netdev@...r.kernel.org
Cc: dev@...nvswitch.org
Subject: [PATCH net-next v11 0/6] openvswitch: support for layer 3 encapsulated packets
At the core of this patch set is removing the assumption in Open vSwitch
datapath that all packets have Ethernet header. Support for layer 3 GRE
tunnels is also added by this patchset.
The implementation relies on the presence of pop_eth and push_eth actions
in datapath flows to facilitate adding and removing Ethernet headers as
appropriate. The construction of such flows is left up to user-space.
This series is based on work by Lorand Jakab, Thomas Morin and others.
And it relies on recently merged work by Jiri Benc, much thanks to him for
his help.
This patch set is comprised of kernel patches against net-next.
To aid review it and the above dependency is available at:
tree: https://github.com/horms/openvswitch
branch: l3-vpn
tag: l3-vpn-v11
There is a companion patch set for the Open vSwitch user-space code
which I will post separately to the dev@...nvswitch.org mailing list as:
"[PATCH v12 0/3] userspace: Support for layer 3 encapsulated packets"
Lorand Jakab (1):
openvswitch: add layer 3 flow/port support
Simon Horman (5):
net: introduce skb_transport_header_was_set()
gre: unset mac header for non-TEB packets received by ipgre device
openvswitch: set skb protocol and mac_len when receiving on internal
device
openvswitch: add support to push and pop mpls for layer3 packets
openvswitch: use ipgre tunnel rather than gretap tunnel
include/linux/skbuff.h | 5 +
include/net/gre.h | 4 +-
include/uapi/linux/openvswitch.h | 13 +++
net/ipv4/ip_gre.c | 11 +-
net/openvswitch/actions.c | 69 ++++++++++--
net/openvswitch/datapath.c | 13 +--
net/openvswitch/flow.c | 65 +++++++----
net/openvswitch/flow.h | 4 +-
net/openvswitch/flow_netlink.c | 213 ++++++++++++++++++++++++-----------
net/openvswitch/vport-geneve.c | 2 +-
net/openvswitch/vport-gre.c | 4 +-
net/openvswitch/vport-internal_dev.c | 9 ++
net/openvswitch/vport-netdev.c | 27 ++++-
net/openvswitch/vport-netdev.h | 2 +
net/openvswitch/vport-vxlan.c | 2 +-
15 files changed, 321 insertions(+), 122 deletions(-)
--
2.7.0.rc3.207.g0ac5344
Powered by blists - more mailing lists