netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Simon Horman <horms@verge.net.au>
To: dev@openvswitch.org, netdev@vger.kernel.org
Cc: Ravi K <rkerur@gmail.com>,
	Isaku Yamahata <yamahata@valinux.co.jp>,
	Jesse Gross <jesse@nicira.com>,
	Pravin B Shelar <pshelar@nicira.com>,
	jarno.rajahalme@nsn.com, Joe Stringer <joe@wand.net.nz>
Subject: [PATCH v2.35 0/6] MPLS actions and matches
Date: Sat, 20 Jul 2013 12:06:57 +0900	[thread overview]
Message-ID: <1374289623-17056-1-git-send-email-horms@verge.net.au> (raw)

Hi,

This series implements MPLS actions and matches based on work by
Ravi K, Leo Alterman, Yamahata-san and Joe Stringer.

This series provides two changes

* Provide user-space support for the VLAN/MPLS tag insertion order
  up to and including OpenFlow 1.2, and the different ordering
  specified from OpenFlow 1.3. In a nutshell the datapath always
  uses the OpenFlow 1.3 ordering, which is to always insert tags
  immediately after the L2 header, regardless of the presence of other
  tags. And ovs-vswtichd provides compatibility for the behaviour up
  to OpenFlow 1.2, which is that MPLS tags should follow VLAN tags
  if present.

* Adding basic MPLS action and match support to the kernel datapath


Differences between v2.35 and v2.34:

* Add support for the tag ordering specified up until OpenFlow 1.2 and
  the ordering specified from OpenFlow 1.3.

* Correct error in datapath patch's handling of GSO in the presence
  of MPLS and absence of VLANs.


Patch overview:

* The first 5 patches of this series are new,
  adding support for different tag ordering.
* The last patch is a revised version of the patch to add MPLS support
  to the datapath. It has been updated to use OpenFlow 1.3 tag ordering
  and resolve a GSO handling bug: both mentioned above. Its change log
  includes a history of changes.


To aid review this series is available in git at:

git://github.com/horms/openvswitch.git devel/mpls-v2.35


Patch list and overall diffstat:

Joe Stringer (5):
  odp: Only pass vlan_tci to commit_vlan_action()
  odp: Allow VLAN actions after MPLS actions
  ofp-actions: Add OFPUTIL_OFPAT13_PUSH_MPLS
  ofp-actions: Add separate OpenFlow 1.3 action parser
  lib: Push MPLS tags in the OpenFlow 1.3 ordering

Simon Horman (1):
  datapath: Add basic MPLS support to kernel

 datapath/Modules.mk                             |    1 +
 datapath/actions.c                              |  125 ++++++-
 datapath/datapath.c                             |  254 +++++++++++--
 datapath/datapath.h                             |    9 +
 datapath/flow.c                                 |   58 ++-
 datapath/flow.h                                 |   17 +-
 datapath/linux/compat/gso.c                     |   50 ++-
 datapath/linux/compat/gso.h                     |   39 ++
 datapath/linux/compat/include/linux/netdevice.h |   12 -
 datapath/linux/compat/netdevice.c               |   28 --
 datapath/mpls.h                                 |   15 +
 datapath/tunnel.c                               |    1 +
 datapath/vport-netdev.c                         |   44 ++-
 include/linux/openvswitch.h                     |    7 +-
 lib/flow.c                                      |    2 +-
 lib/odp-util.c                                  |   22 +-
 lib/odp-util.h                                  |    4 +-
 lib/ofp-actions.c                               |   68 +++-
 lib/ofp-parse.c                                 |    1 +
 lib/ofp-util.c                                  |    3 +
 lib/ofp-util.h                                  |    1 +
 lib/packets.c                                   |   10 +-
 lib/packets.h                                   |    2 +-
 ofproto/ofproto-dpif-xlate.c                    |  101 +++--
 ofproto/ofproto-dpif-xlate.h                    |    5 +
 tests/ofproto-dpif.at                           |  446 +++++++++++++++++++++++
 26 files changed, 1195 insertions(+), 130 deletions(-)
 create mode 100644 datapath/mpls.h

-- 
1.7.10.4

             reply	other threads:[~2013-07-20  3:07 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-07-20  3:06 Simon Horman [this message]
2013-07-20  3:06 ` [PATCH v2.35 1/6] odp: Only pass vlan_tci to commit_vlan_action() Simon Horman
2013-07-20  3:06 ` [PATCH v2.35 2/6] odp: Allow VLAN actions after MPLS actions Simon Horman
2013-07-20  3:07 ` [PATCH v2.35 3/6] ofp-actions: Add OFPUTIL_OFPAT13_PUSH_MPLS Simon Horman
     [not found] ` <1374289623-17056-1-git-send-email-horms-/R6kz+dDXgpPR4JQBCEnsQ@public.gmane.org>
2013-07-20  3:07   ` [PATCH v2.35 4/6] ofp-actions: Add separate OpenFlow 1.3 action parser Simon Horman
2013-07-20  3:07   ` [PATCH v2.35 6/6] datapath: Add basic MPLS support to kernel Simon Horman
2013-08-08  0:39     ` Jesse Gross
2013-08-09  8:17       ` Simon Horman
2013-07-20  3:07 ` [PATCH v2.35 5/6] lib: Push MPLS tags in the OpenFlow 1.3 ordering Simon Horman
     [not found]   ` <1374289623-17056-6-git-send-email-horms-/R6kz+dDXgpPR4JQBCEnsQ@public.gmane.org>
2013-08-06  2:04     ` Joe Stringer
     [not found]       ` <CAOftzPjviFrD5c3ZHM6n6-Ud+REyiuaXgNzea7TFNrYZADqdXQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2013-08-07 16:17         ` Ben Pfaff

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1374289623-17056-1-git-send-email-horms@verge.net.au \
    --to=horms@verge.net.au \
    --cc=dev@openvswitch.org \
    --cc=jarno.rajahalme@nsn.com \
    --cc=jesse@nicira.com \
    --cc=joe@wand.net.nz \
    --cc=netdev@vger.kernel.org \
    --cc=pshelar@nicira.com \
    --cc=rkerur@gmail.com \
    --cc=yamahata@valinux.co.jp \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).