From: Simon Horman <horms@verge.net.au>
To: dev@openvswitch.org, netdev@vger.kernel.org,
Jesse Gross <jesse@nicira.com>,
Pravin B Shelar <pshelar@nicira.com>
Cc: Ben Pfaff <blp@nicira.com>, Ravi K <rkerur@gmail.com>,
Joe Stringer <joe@wand.net.nz>
Subject: Re: [PATCH v2.57] datapath: Add basic MPLS support to kernel
Date: Fri, 16 May 2014 17:48:10 +0900 [thread overview]
Message-ID: <20140516084809.GA18920@verge.net.au> (raw)
In-Reply-To: <1400195227-21265-2-git-send-email-horms@verge.net.au>
On Fri, May 16, 2014 at 08:07:07AM +0900, Simon Horman wrote:
> Allow datapath to recognize and extract MPLS labels into flow keys
> and execute actions which push, pop, and set labels on packets.
[snip]
> diff --git a/datapath/linux/compat/gso.h b/datapath/linux/compat/gso.h
> index b83a4c3..98b2aba 100644
> --- a/datapath/linux/compat/gso.h
> +++ b/datapath/linux/compat/gso.h
> @@ -4,6 +4,7 @@
> #include <linux/version.h>
> #if LINUX_VERSION_CODE < KERNEL_VERSION(3,12,0)
>
> +#include <linux/netdevice.h>
> #include <linux/skbuff.h>
> #include <net/protocol.h>
>
> @@ -14,6 +15,9 @@ struct ovs_gso_cb {
> sk_buff_data_t inner_network_header;
> sk_buff_data_t inner_mac_header;
> void (*fix_segment)(struct sk_buff *);
> +#if LINUX_VERSION_CODE < KERNEL_VERSION(3,11,0)
> + __be16 inner_protocol;
> +#endif
> };
> #define OVS_GSO_CB(skb) ((struct ovs_gso_cb *)(skb)->cb)
Unfortunately it seems that at least for v3.11 on x86_64 the above now
results in struct ovs_gso_cb being larger than the cb field of struct
skb_buff.
(It also seems that the call to ovs_skb_set_inner_protocol() is
missing from push_mpls() so it is likely that GSO segmentation
is broken.)
I apologise for not noticing this earlier.
One idea I had is so make inner_protocol union of some other member of
either struct ovs_gso_cb or struct ovs_skb_cb. But its not clear to me that
would fly.
Another possibility is to simply drop compatibility for segmentation of GSO
packets that become MPLS. But I gather that is not the preferred way for
datapath features.
Any suggestions would be much appreciated.
next prev parent reply other threads:[~2014-05-16 8:48 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-05-15 23:07 [PATCH v2.57] datapath: Add basic MPLS support to kernel Simon Horman
[not found] ` <1400195227-21265-1-git-send-email-horms-/R6kz+dDXgpPR4JQBCEnsQ@public.gmane.org>
2014-05-15 23:07 ` Simon Horman
2014-05-16 8:48 ` Simon Horman [this message]
[not found] ` <20140516084809.GA18920-/R6kz+dDXgpPR4JQBCEnsQ@public.gmane.org>
2014-05-16 21:29 ` Jesse Gross
2014-05-16 21:48 ` Thomas Graf
[not found] ` <20140516214806.GH8346-FZi0V3Vbi30CUdFEqe4BF2D2FQJk+8+b@public.gmane.org>
2014-05-16 22:17 ` Jesse Gross
2014-05-17 1:32 ` Simon Horman
[not found] ` <20140517013224.GA25978-/R6kz+dDXgpPR4JQBCEnsQ@public.gmane.org>
2014-05-19 22:02 ` Simon Horman
[not found] ` <20140519220219.GA20590-/R6kz+dDXgpPR4JQBCEnsQ@public.gmane.org>
2014-05-20 12:18 ` Thomas Graf
2014-05-20 1:34 ` Jesse Gross
2014-05-20 10:48 ` Simon Horman
2014-05-21 2:05 ` Jesse Gross
2014-05-21 15:26 ` Simon Horman
[not found] ` <1400195227-21265-2-git-send-email-horms-/R6kz+dDXgpPR4JQBCEnsQ@public.gmane.org>
2014-05-21 2:30 ` Jesse Gross
[not found] ` <CAEP_g=8ZEbx0NzCaXOc=ywiBAtejpmO4K-UzVk5uwBmEfUwZ7w-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-05-21 15:31 ` Simon Horman
2014-05-21 20:31 ` Jesse Gross
2014-05-21 23:03 ` Simon Horman
[not found] ` <20140521230351.GC19986-/R6kz+dDXgpPR4JQBCEnsQ@public.gmane.org>
2014-05-21 23:53 ` Jesse Gross
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=20140516084809.GA18920@verge.net.au \
--to=horms@verge.net.au \
--cc=blp@nicira.com \
--cc=dev@openvswitch.org \
--cc=jesse@nicira.com \
--cc=joe@wand.net.nz \
--cc=netdev@vger.kernel.org \
--cc=pshelar@nicira.com \
--cc=rkerur@gmail.com \
/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).