Thread (5 messages) flat view 5 messages, 2 authors, 2017-05-22

Re: [PATCH net-next] geneve: always fill CSUM6_RX configuration

From: Eric Garver <hidden>
Date: 2017-05-22 16:50:54

On Sat, May 20, 2017 at 09:56:44PM -0700, Pravin Shelar wrote:
On Sat, May 20, 2017 at 6:35 AM, Eric Garver [off-list ref] wrote:
quoted
On Fri, May 19, 2017 at 06:57:46PM -0700, Pravin Shelar wrote:
quoted
On Thu, May 18, 2017 at 12:59 PM, Eric Garver [off-list ref] wrote:
quoted
CSMU6_RX is relevant for collect_metadata as well. As such leave it
outside of the dev's IPv4/IPv6 checks.
Can you explain it bit? is this flag used with ipv4 tunnels?
It's used with collect_metadata as both ipv4 and ipv6 sockets will be
created.

openvswitch recently gained support for creating tunnels with rtnetlink.
It sets COLLECT_METADATA and CSUM6_RX. After create, it does a get to
verify the device got created with all the requested configuration. The
verify was failing due to CSUM6_RX not being returned.

Since ip_tunnel_info_af() defaults to returning AF_INET, we fall into
the IPv4 case and CSUM6_RX is never returned. Other relevant areas that
call ip_tunnel_info_af() do so using the info from the skb, not the
geneve_dev.
ok.
I think ip_tunnel_info_af() check is not right. it does not work in
case of collect_metadata.
Better fix would be check for genene->sock4 and genene->sock6 and
build the netlink skb accordingly.
Agreed. That's a better idea.

Lets drop this patch. I'll work on one to look at the actual sockets
instead.

Thanks Pravin.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help