lkml.org 
[lkml]   [2016]   [Jun]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [PATCH] geneve: fix max_mtu setting
On Mon, Jun 27, 2016 at 6:27 PM, 严海双 <yanhaishuang@cmss.chinamobile.com> wrote:
>
> On Jun 28, 2016, at 12:10 AM, Jesse Gross <jesse@kernel.org> wrote:
>
> On Sun, Jun 26, 2016 at 6:13 PM, Haishuang Yan
> <yanhaishuang@cmss.chinamobile.com> wrote:
>
>
> On Jun 26, 2016, at 8:35 PM, zhuyj <zyjzyj2000@gmail.com> wrote:
>
> + if (geneve->remote.sa.sa_family == AF_INET)
> + max_mtu -= sizeof(struct iphdr);
> + else
> + max_mtu -= sizeof(struct ipv6hdr);
>
> Sorry, if sa_family is not AF_NET, it is AF_INET6?
>
> There is a lot of macros in include/linux/socket.h.
>
> Zhu Yanjun
>
>
> There are only two enumerations AF_INET and AF_INET6 have been assigned in
> geneve_newlink:
>
>
> There's actually a third possibility: AF_UNSPEC, which is the default
> if neither remote type is specified. This is used by lightweight
> tunnels and should be able to work with either IPv4/v6. For the
> purposes of the MTU calculation this means that the IPv4 header size
> should be used to avoid disallowing potentially valid configurations.
>
>
> Yes, you’re right. Thanks for you advise. I will send a v2 commit like this:
>
> if (geneve->remote.sa.sa_family == AF_INET6)
> max_mtu -= sizeof(struct ipv6hdr);
> else
> max_mtu -= sizeof(struct iphdr);
>
> Is this ok?

Yes, that looks fine to me.

\
 
 \ /
  Last update: 2016-06-28 05:41    [W:0.061 / U:1.904 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site