This series adds 802.1ad support to openvswitch. It is a continuation of the work originally started by Thomas F Herbert - hence the large rev number.
The extra VLAN is implemented by using an additional level of the OVS_KEY_ATTR_ENCAP netlink attribute. In OVS flow speak, this looks like eth_type(0x88a8),vlan(vid=100),encap(eth_type(0x8100), vlan(vid=200), encap(eth_type(0x0800), ...)) The userspace counterpart has also seen recent activity on the ovs-dev mailing lists. There are some new 802.1ad OVS tests being added - also on the ovs-dev list. This patch series has been tested using the most recent version of userspace (v3) and tests (v2). v21 changes: - Fix (and simplify) netlink attribute parsing - re-add handling of truncated VLAN tags - fix if/else dangling assignment in {push,pop}_vlan() - simplify parse_vlan() Eric Garver (3): vlan: Check for vlan ethernet types for 8021.q or 802.1ad openvswitch: 802.1AD Flow handling, actions, vlan parsing, netlink attributes openvswitch: report error on VLAN nlattr in ovs_key_from_nlattrs() Thomas F Herbert (1): openvswitch: 802.1ad uapi changes. include/linux/if_vlan.h | 33 ++++-- include/uapi/linux/openvswitch.h | 17 +-- net/openvswitch/actions.c | 16 ++- net/openvswitch/flow.c | 64 +++++++--- net/openvswitch/flow.h | 8 +- net/openvswitch/flow_netlink.c | 244 +++++++++++++++++++++++++++------------ net/openvswitch/vport.c | 7 +- 7 files changed, 271 insertions(+), 118 deletions(-) -- 2.5.5