[PATCH net-next 20/22] openvswitch: Move dev pointer into vport itself

2015-07-21 Thread Thomas Graf
This is the first step in representing all OVS vports as regular struct net_devices. Move the net_device pointer into the vport structure itself to get rid of struct vport_netdev. Signed-off-by: Thomas Graf tg...@suug.ch Signed-off-by: Pravin B Shelar pshe...@nicira.com --- net/openvswitch

[PATCH net-next 06/22] ipv4: redirect dst output to lwtunnel output

2015-07-21 Thread Thomas Graf
From: Roopa Prabhu ro...@cumulusnetworks.com For input routes with tunnel encap state this patch redirects dst output functions to lwtunnel_output which later resolves to the corresponding lwtunnel output function. This has been tested to work with mpls ip tunnels. Signed-off-by: Roopa Prabhu

[PATCH net-next 13/22] arp: Inherit metadata dst when creating ARP requests

2015-07-21 Thread Thomas Graf
If output device wants to see the dst, inherit the dst of the original skb and pass it on to generate the ARP request. Signed-off-by: Thomas Graf tg...@suug.ch --- net/ipv4/arp.c | 65 +- 1 file changed, 37 insertions(+), 28 deletions

[PATCH net-next 21/22] openvswitch: Abstract vport name through ovs_vport_name()

2015-07-21 Thread Thomas Graf
This allows to get rid of the get_name() vport ops later on. Signed-off-by: Thomas Graf tg...@suug.ch --- net/openvswitch/datapath.c | 4 ++-- net/openvswitch/vport-internal_dev.c | 1 - net/openvswitch/vport-netdev.c | 6 -- net/openvswitch/vport-netdev.h | 1 - net

[PATCH net-next 08/22] mpls: export mpls functions for use by mpls iptunnels

2015-07-21 Thread Thomas Graf
From: Roopa Prabhu ro...@cumulusnetworks.com Signed-off-by: Roopa Prabhu ro...@cumulusnetworks.com --- net/mpls/af_mpls.c | 11 --- net/mpls/internal.h | 9 +++-- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/net/mpls/af_mpls.c b/net/mpls/af_mpls.c index

[PATCH net-next 11/22] icmp: Don't leak original dst into ip_route_input()

2015-07-21 Thread Thomas Graf
ip_route_input() unconditionally overwrites the dst. Hide the original dst attached to the skb by calling skb_dst_set(skb, NULL) prior to ip_route_input(). Reported-by: Julian Anastasov j...@ssi.bg Signed-off-by: Thomas Graf tg...@suug.ch --- net/ipv4/icmp.c | 1 + 1 file changed, 1 insertion

[PATCH net-next 15/22] route: Extend flow representation with tunnel key

2015-07-21 Thread Thomas Graf
Add a new flowi_tunnel structure which is a subset of ip_tunnel_key to allow routes to match on tunnel metadata. For now, the tunnel id is added to flowi_tunnel which allows for routes to be bound to specific virtual tunnels. Signed-off-by: Thomas Graf tg...@suug.ch --- include/net/flow.h

[PATCH net-next 12/22] dst: Metadata destinations

2015-07-21 Thread Thomas Graf
allowing to interpret metadata in a later commit. Signed-off-by: Thomas Graf tg...@suug.ch --- include/net/dst.h | 6 +++- include/net/dst_metadata.h | 32 ++ net/core/dev.c | 2 +- net/core/dst.c | 84

[PATCH net-next 17/22] fib: Add fib rule match on tunnel id

2015-07-21 Thread Thomas Graf
at tunnel level upon demand. Signed-off-by: Thomas Graf tg...@suug.ch --- drivers/net/vxlan.c| 3 ++- include/net/fib_rules.h| 1 + include/net/ip_tunnels.h | 11 +++ include/uapi/linux/fib_rules.h | 2 +- net/core/fib_rules.c | 24

[PATCH net-next 14/22] vxlan: Flow based tunneling

2015-07-21 Thread Thomas Graf
removed. Signed-off-by: Thomas Graf tg...@suug.ch Signed-off-by: Pravin B Shelar pshe...@nicira.com --- drivers/net/vxlan.c | 149 --- include/linux/skbuff.h | 1 + include/net/dst_metadata.h | 13 include/net/ip_tunnels.h | 14

[PATCH net-next 07/22] ipv6: rt6_info output redirect to tunnel output

2015-07-21 Thread Thomas Graf
From: Roopa Prabhu ro...@cumulusnetworks.com This is similar to ipv4 redirect of dst output to lwtunnel output function for encapsulation and xmit. Signed-off-by: Roopa Prabhu ro...@cumulusnetworks.com --- net/ipv6/route.c | 1 + 1 file changed, 1 insertion(+) diff --git a/net/ipv6/route.c

[PATCH net-next 03/22] ipv4: support for fib route lwtunnel encap attributes

2015-07-21 Thread Thomas Graf
From: Roopa Prabhu ro...@cumulusnetworks.com This patch adds support in ipv4 fib functions to parse user provided encap attributes and attach encap state data to fib_nh and rtable. Signed-off-by: Roopa Prabhu ro...@cumulusnetworks.com --- include/net/ip_fib.h | 5 ++- include/net/route.h

[PATCH net-next 05/22] lwtunnel: support dst output redirect function

2015-07-21 Thread Thomas Graf
From: Roopa Prabhu ro...@cumulusnetworks.com This patch introduces lwtunnel_output function to call corresponding lwtunnels output function to xmit the packet. It adds two variants lwtunnel_output and lwtunnel_output6 for ipv4 and ipv6 respectively today. But this is subject to change when

[PATCH net-next 16/22] route: Per route IP tunnel metadata via lightweight tunnel

2015-07-21 Thread Thomas Graf
This introduces a new IP tunnel lightweight tunnel type which allows to specify IP tunnel instructions per route. Only IPv4 is supported at this point. Signed-off-by: Thomas Graf tg...@suug.ch --- drivers/net/vxlan.c| 10 +++- include/net/dst_metadata.h | 12 - include/net

[PATCH net-next 02/22] lwtunnel: infrastructure for handling light weight tunnels like mpls

2015-07-21 Thread Thomas Graf
From: Roopa Prabhu ro...@cumulusnetworks.com Provides infrastructure to parse/dump/store encap information for light weight tunnels like mpls. Encap information for such tunnels is associated with fib routes. This infrastructure is based on previous suggestions from Eric Biederman to follow the

[PATCH net-next 00/22 v2] Lightweight flow based encapsulation

2015-07-21 Thread Thomas Graf
for use by mpls iptunnels mpls: ip tunnel support Thomas Graf (13): ip_tunnel: Make ovs_tunnel_info and ovs_key_ipv4_tunnel generic icmp: Don't leak original dst into ip_route_input() dst: Metadata destinations arp: Inherit metadata dst when creating ARP requests vxlan: Flow based

[PATCH net-next 04/22] ipv6: support for fib route lwtunnel encap attributes

2015-07-21 Thread Thomas Graf
From: Roopa Prabhu ro...@cumulusnetworks.com This patch adds support in ipv6 fib functions to parse Netlink RTA encap attributes and attach encap state data to rt6_info. Signed-off-by: Roopa Prabhu ro...@cumulusnetworks.com --- include/net/ip6_fib.h | 3 +++ net/ipv6/ip6_fib.c| 2 ++

Re: [PATCH net-next 14/22] vxlan: Flow based tunneling

2015-07-20 Thread Thomas Graf
On 07/17/15 at 11:41am, Alexei Starovoitov wrote: On 7/17/15 5:55 AM, Thomas Graf wrote: @@ -2373,6 +2470,12 @@ static void vxlan_setup(struct net_device *dev) netif_keep_dst(dev); dev-priv_flags |= IFF_LIVE_ADDR_CHANGE; +/* If in flow based mode, keep the dst including

Re: [PATCH net-next 15/22] route: Extend flow representation with tunnel key

2015-07-20 Thread Thomas Graf
On 07/17/15 at 11:25pm, Julian Anastasov wrote: Hello, On Fri, 17 Jul 2015, Thomas Graf wrote: Add a new flowi_tunnel structure which is a subset of ip_tunnel_key to allow routes to match on tunnel metadata. For now, the tunnel id is added to flowi_tunnel which allows

Re: [PATCH v2 net-next 1/3] rhashtable: Allow lookup function to have compare function agument

2015-07-17 Thread Thomas Graf
Acked-by: Thomas Graf tg...@suug.ch -- To unsubscribe from this list: send the line unsubscribe netdev in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html

Re: [PATCH v2 net-next 2/3] rhashtable: Add a function for in order insertion and lookup in buckets

2015-07-17 Thread Thomas Graf
On 07/15/15 at 12:46pm, Tom Herbert wrote: On Tue, Jul 14, 2015 at 10:54 PM, Herbert Xu The memory cost is merely 8 bytes per local port, is it really too much? Okay, it looks like there is already an additional hlist_node in skc_common that can be used for a secondary hash. It's

[PATCH net-next 22/22] openvswitch: Use regular VXLAN net_device device

2015-07-17 Thread Thomas Graf
(), vxlan_xmit_skb() since they are no longer needed. Signed-off-by: Thomas Graf tg...@suug.ch Signed-off-by: Pravin B Shelar pshe...@nicira.com --- drivers/net/vxlan.c| 242 +++ include/net/rtnetlink.h| 1 + include/net/vxlan.h| 24 +-- net/core

[PATCH net-next 20/22] openvswitch: Move dev pointer into vport itself

2015-07-17 Thread Thomas Graf
This is the first step in representing all OVS vports as regular struct net_devices. Move the net_device pointer into the vport structure itself to get rid of struct vport_netdev. Signed-off-by: Thomas Graf tg...@suug.ch Signed-off-by: Pravin B Shelar pshe...@nicira.com --- net/openvswitch

[PATCH net-next 19/22] openvswitch: Make tunnel set action attach a metadata dst

2015-07-17 Thread Thomas Graf
Utilize the new metadata dst to attach encapsulation instructions to the skb. The existing egress_tun_info via the OVS_CB() is left in place until all tunnel vports have been converted to the new method. Signed-off-by: Thomas Graf tg...@suug.ch Signed-off-by: Pravin B Shelar pshe...@nicira.com

[PATCH net-next 08/22] mpls: export mpls functions for use by mpls iptunnels

2015-07-17 Thread Thomas Graf
From: Roopa Prabhu ro...@cumulusnetworks.com Signed-off-by: Roopa Prabhu ro...@cumulusnetworks.com --- net/mpls/af_mpls.c | 11 --- net/mpls/internal.h | 9 +++-- 2 files changed, 15 insertions(+), 5 deletions(-) diff --git a/net/mpls/af_mpls.c b/net/mpls/af_mpls.c index

[PATCH net-next 21/22] openvswitch: Abstract vport name through ovs_vport_name()

2015-07-17 Thread Thomas Graf
This allows to get rid of the get_name() vport ops later on. Signed-off-by: Thomas Graf tg...@suug.ch --- net/openvswitch/datapath.c | 4 ++-- net/openvswitch/vport-internal_dev.c | 1 - net/openvswitch/vport-netdev.c | 6 -- net/openvswitch/vport-netdev.h | 1 - net

[PATCH net-next 17/22] fib: Add fib rule match on tunnel id

2015-07-17 Thread Thomas Graf
at tunnel level upon demand. Signed-off-by: Thomas Graf tg...@suug.ch --- drivers/net/vxlan.c| 3 ++- include/net/fib_rules.h| 1 + include/net/ip_tunnels.h | 11 +++ include/uapi/linux/fib_rules.h | 2 +- net/core/fib_rules.c | 24

[PATCH net-next 13/22] arp: Inherit metadata dst when creating ARP requests

2015-07-17 Thread Thomas Graf
If output device wants to see the dst, inherit the dst of the original skb and pass it on to generate the ARP request. Signed-off-by: Thomas Graf tg...@suug.ch --- net/ipv4/arp.c | 65 +- 1 file changed, 37 insertions(+), 28 deletions

[PATCH net-next 16/22] route: Per route IP tunnel metadata via lightweight tunnel

2015-07-17 Thread Thomas Graf
This introduces a new IP tunnel lightweight tunnel type which allows to specify IP tunnel instructions per route. Only IPv4 is supported at this point. Signed-off-by: Thomas Graf tg...@suug.ch --- drivers/net/vxlan.c| 10 +++- include/net/dst_metadata.h | 12 - include/net

[PATCH net-next 04/22] ipv6: support for fib route lwtunnel encap attributes

2015-07-17 Thread Thomas Graf
From: Roopa Prabhu ro...@cumulusnetworks.com This patch adds support in ipv6 fib functions to parse Netlink RTA encap attributes and attach encap state data to rt6_info. Signed-off-by: Roopa Prabhu ro...@cumulusnetworks.com --- include/net/ip6_fib.h | 3 +++ net/ipv6/ip6_fib.c| 2 ++

[PATCH net-next 03/22] ipv4: support for fib route lwtunnel encap attributes

2015-07-17 Thread Thomas Graf
From: Roopa Prabhu ro...@cumulusnetworks.com This patch adds support in ipv4 fib functions to parse user provided encap attributes and attach encap state data to fib_nh and rtable. Signed-off-by: Roopa Prabhu ro...@cumulusnetworks.com --- include/net/ip_fib.h | 5 ++- include/net/route.h

[PATCH net-next 18/22] vxlan: Factor out device configuration

2015-07-17 Thread Thomas Graf
This factors out the device configuration out of the RTNL newlink API which allows for in-kernel creation of VXLAN net_devices. Signed-off-by: Thomas Graf tg...@suug.ch --- drivers/net/vxlan.c | 332 include/net/vxlan.h | 59 ++ 2

[PATCH net-next 14/22] vxlan: Flow based tunneling

2015-07-17 Thread Thomas Graf
removed. Signed-off-by: Thomas Graf tg...@suug.ch Signed-off-by: Pravin B Shelar pshe...@nicira.com --- drivers/net/vxlan.c | 155 +-- include/linux/skbuff.h | 1 + include/net/dst_metadata.h | 13 include/net/ip_tunnels.h | 14

[PATCH net-next 15/22] route: Extend flow representation with tunnel key

2015-07-17 Thread Thomas Graf
Add a new flowi_tunnel structure which is a subset of ip_tunnel_key to allow routes to match on tunnel metadata. For now, the tunnel id is added to flowi_tunnel which allows for routes to be bound to specific virtual tunnels. Signed-off-by: Thomas Graf tg...@suug.ch --- include/net/flow.h | 7

[PATCH net-next 12/22] dst: Metadata destinations

2015-07-17 Thread Thomas Graf
allowing to interpret metadata in a later commit. Signed-off-by: Thomas Graf tg...@suug.ch --- include/net/dst.h | 6 +++- include/net/dst_metadata.h | 32 ++ net/core/dev.c | 2 +- net/core/dst.c | 84

[PATCH net-next 09/22] mpls: ip tunnel support

2015-07-17 Thread Thomas Graf
From: Roopa Prabhu ro...@cumulusnetworks.com This implementation uses lwtunnel infrastructure to register hooks for mpls tunnel encaps. It picks cues from iptunnel_encaps infrastructure and previous mpls iptunnel RFC patches from Eric W. Biederman and Robert Shearman Signed-off-by: Roopa Prabhu

[PATCH net-next 11/22] icmp: Don't leak original dst into ip_route_input()

2015-07-17 Thread Thomas Graf
ip_route_input() unconditionally overwrites the dst. Hide the original dst attached to the skb by calling skb_dst_set(skb, NULL) prior to ip_route_input(). Reported-by: Julian Anastasov j...@ssi.bg Signed-off-by: Thomas Graf tg...@suug.ch --- net/ipv4/icmp.c | 1 + 1 file changed, 1 insertion

[PATCH net-next 00/22] Lightweight flow based encapsulation

2015-07-17 Thread Thomas Graf
attributes lwtunnel: support dst output redirect function ipv4: redirect dst output to lwtunnel output ipv6: rt6_info output redirect to tunnel output mpls: export mpls functions for use by mpls iptunnels mpls: ip tunnel support Thomas Graf (13): ip_tunnel: Make ovs_tunnel_info

[PATCH net-next 06/22] ipv4: redirect dst output to lwtunnel output

2015-07-17 Thread Thomas Graf
From: Roopa Prabhu ro...@cumulusnetworks.com For input routes with tunnel encap state this patch redirects dst output functions to lwtunnel_output which later resolves to the corresponding lwtunnel output function. This has been tested to work with mpls ip tunnels. Open items: Support for

[PATCH net-next 10/22] ip_tunnel: Make ovs_tunnel_info and ovs_key_ipv4_tunnel generic

2015-07-17 Thread Thomas Graf
to extend/modify these structures without affecting user ABI. Signed-off-by: Thomas Graf tg...@suug.ch --- include/net/ip_tunnels.h | 63 + include/uapi/linux/openvswitch.h | 2 +- net/openvswitch/actions.c| 2 +- net/openvswitch/datapath.h | 5

[PATCH net-next 02/22] lwtunnel: infrastructure for handling light weight tunnels like mpls

2015-07-17 Thread Thomas Graf
From: Roopa Prabhu ro...@cumulusnetworks.com Provides infrastructure to parse/dump/store encap information for light weight tunnels like mpls. Encap information for such tunnels is associated with fib routes. This infrastructure is based on previous suggestions from Eric Biederman to follow the

[PATCH net-next 07/22] ipv6: rt6_info output redirect to tunnel output

2015-07-17 Thread Thomas Graf
From: Roopa Prabhu ro...@cumulusnetworks.com This is similar to ipv4 redirect of dst output to lwtunnel output function for encapsulation and xmit. Signed-off-by: Roopa Prabhu ro...@cumulusnetworks.com --- net/ipv6/route.c | 1 + 1 file changed, 1 insertion(+) diff --git a/net/ipv6/route.c

[PATCH net-next 05/22] lwtunnel: support dst output redirect function

2015-07-17 Thread Thomas Graf
From: Roopa Prabhu ro...@cumulusnetworks.com This patch introduces lwtunnel_output function to call corresponding lwtunnels output function to xmit the packet. It adds two variants lwtunnel_output and lwtunnel_output6 for ipv4 and ipv6 respectively today. But this is subject to change when

[PATCH net-next 01/22] rtnetlink: introduce new RTA_ENCAP_TYPE and RTA_ENCAP attributes

2015-07-17 Thread Thomas Graf
From: Roopa Prabhu ro...@cumulusnetworks.com This patch introduces two new RTA attributes to attach encap data to fib routes. Example iproute2 command to attach mpls encap data to ipv4 routes $ip route add 10.1.1.0/30 encap mpls 200 via inet 10.1.1.1 dev swp1 Signed-off-by: Roopa Prabhu

Re: [PATCH net-next] rhashtable: Allow other tasks to be scheduled in large lookup loops

2015-07-17 Thread Thomas Graf
On 07/17/15 at 10:28am, Eric Dumazet wrote: On Fri, 2015-07-17 at 10:24 +0200, Eric Dumazet wrote: Please simply use cond_resched() without counting and magic value. Done Also use cond_resched() in insert and delete phases ? When I tried that it made the walker duplicates disappear which

[PATCH net-next v2] rhashtable: Allow other tasks to be scheduled in large lookup loops

2015-07-17 Thread Thomas Graf
Depending on system speed, the large lookup/insert/delete loops of the testsuite can take a considerable amount of time to complete causing watchdog warnings to appear. Allow other tasks to be scheduled throughout the loops. Reported-by: Meelis Roos mr...@linux.ee Signed-off-by: Thomas Graf tg

Re: 4.1 regression in resizable hashtable tests

2015-07-17 Thread Thomas Graf
On 07/02/15 at 10:09pm, Meelis Roos wrote: [ 33.425061] Running rhashtable test nelem=8, max_size=65536, shrinking=0 [ 33.425154] Test 00: [ 33.534470] Adding 5 keys [ 34.743553] Info: encountered resize [ 34.743698] Info: encountered resize [ 34.743838] Info: encountered

[PATCH net-next] rhashtable: Allow other tasks to be scheduled in large lookup loops

2015-07-17 Thread Thomas Graf
Depending on system speed, the large lookup loop can take a considerable amount of time to complete causing watchdog warnings to appear. Allow other tasks to be scheduled after every batch of 1000 lookups. Reported-by: Meelis Roos mr...@linux.ee Signed-off-by: Thomas Graf tg...@suug.ch --- lib

Re: 4.1 regression in resizable hashtable tests

2015-07-17 Thread Thomas Graf
On 07/17/15 at 12:26pm, Phil Sutter wrote: On Fri, Jul 17, 2015 at 10:04:56AM +0200, Thomas Graf wrote: On 07/02/15 at 10:09pm, Meelis Roos wrote: [ 33.425061] Running rhashtable test nelem=8, max_size=65536, shrinking=0 [ 33.425154] Test 00: [ 33.534470] Adding 5 keys

Re: [RFC net-next 22/22] openvswitch: Use regular GRE net_device instead of vport

2015-07-17 Thread Thomas Graf
On 07/16/15 at 02:36pm, Pravin Shelar wrote: On Thu, Jul 16, 2015 at 7:52 AM, Thomas Graf tg...@suug.ch wrote: I'm inclined to change this and use an in-kernel API as well to create the net_device just like VXLAN does in patch 21. Pravin, what do you think? About the vxlan APIs we also

Re: [RFC net-next 22/22] openvswitch: Use regular GRE net_device instead of vport

2015-07-16 Thread Thomas Graf
On 07/16/15 at 05:59pm, Simon Horman wrote: On Fri, Jul 10, 2015 at 04:19:24PM +0200, Thomas Graf wrote: static void ipgre_tap_setup(struct net_device *dev) { ether_setup(dev); - dev-netdev_ops = gre_tap_netdev_ops; dev-priv_flags |= IFF_LIVE_ADDR_CHANGE

Re: mmap()ed AF_NETLINK: lockdep and sleep-in-atomic warnings

2015-07-14 Thread Thomas Graf
On 07/13/15 at 10:11pm, Cong Wang wrote: Caused by: commit 21e4902aea80ef35afc00ee8d2abdea4f519b7f7 Author: Thomas Graf tg...@suug.ch Date: Fri Jan 2 23:00:22 2015 +0100 netlink: Lockless lookup with RCU grace period in socket release Defers the release of the socket

Re: [PATCH net-next 2/3] rhashtable: allow lookup function to have compare function agument

2015-07-14 Thread Thomas Graf
On 07/13/15 at 05:39pm, Tom Herbert wrote: Added rhashtable_lookup_fast_cmpfn which does a lookup in an rhash table with the compare function being taken from an argument. This allows different compare functions to be used on the same table. Signed-off-by: Tom Herbert t...@herbertland.com

Re: [RFC net-next 18/22] openvswitch: Make tunnel set action attach a metadata dst

2015-07-14 Thread Thomas Graf
On 07/13/15 at 03:55pm, Joe Stringer wrote: It doesn't look like flow_free() is using this new function to properly free the actions. Also, some of the error cases that hit this code have sf_acts=NULL. Good catch. Will fix in next iteration. -- To unsubscribe from this list: send the line

Re: [PATCH v2] rhashtable: fix for resize events during table walk

2015-07-14 Thread Thomas Graf
On 07/15/15 at 12:35am, mr...@linux.ee wrote: Yes, this fixes the error, thank you. The new problem with the test - soft lockup - CPU#0 stuck for 22s! is still there on 360 MHz UltraSparc IIi. I understand it is harmless but is there some easy way to make the test avoid NMI watchdog? [

[RFC net-next 01/22] rtnetlink: introduce new RTA_ENCAP_TYPE and RTA_ENCAP attributes

2015-07-10 Thread Thomas Graf
From: Roopa Prabhu ro...@cumulusnetworks.com This patch introduces two new RTA attributes to attach encap data to fib routes. Example iproute2 command to attach mpls encap data to ipv4 routes $ip route add 10.1.1.0/30 encap mpls 200 via inet 10.1.1.1 dev swp1 Signed-off-by: Roopa Prabhu

[RFC net-next 03/22] ipv4: support for fib route lwtunnel encap attributes

2015-07-10 Thread Thomas Graf
From: Roopa Prabhu ro...@cumulusnetworks.com This patch adds support in ipv4 fib functions to parse user provided encap attributes and attach encap state data to fib_nh and rtable. Signed-off-by: Roopa Prabhu ro...@cumulusnetworks.com --- include/net/ip_fib.h | 5 ++- include/net/route.h

[RFC net-next 04/22] ipv6: support for fib route lwtunnel encap attributes

2015-07-10 Thread Thomas Graf
From: Roopa Prabhu ro...@cumulusnetworks.com This patch adds support in ipv6 fib functions to parse Netlink RTA encap attributes and attach encap state data to rt6_info. Signed-off-by: Roopa Prabhu ro...@cumulusnetworks.com --- include/net/ip6_fib.h | 3 +++ net/ipv6/ip6_fib.c| 2 ++

[RFC net-next 05/22] lwtunnel: support dst output redirect function

2015-07-10 Thread Thomas Graf
From: Roopa Prabhu ro...@cumulusnetworks.com This patch introduces lwtunnel_output function to call corresponding lwtunnels output function to xmit the packet. It adds two variants lwtunnel_output and lwtunnel_output6 for ipv4 and ipv6 respectively today. But this is subject to change when

[RFC net-next 02/22] lwtunnel: infrastructure for handling light weight tunnels like mpls

2015-07-10 Thread Thomas Graf
From: Roopa Prabhu ro...@cumulusnetworks.com Provides infrastructure to parse/dump/store encap information for light weight tunnels like mpls. Encap information for such tunnels is associated with fib routes. This infrastructure is based on previous suggestions from Eric Biederman to follow the

[RFC net-next 00/22] Lightweight flow based tunneling

2015-07-10 Thread Thomas Graf
ipv6: rt6_info output redirect to tunnel output mpls: export mpls functions for use by mpls iptunnels mpls: ip tunnel support Thomas Graf (12): ip_tunnel: Make ovs_tunnel_info and ovs_key_ipv4_tunnel generic dst: Metadata destinations arp: Inherit metadata dst when creating ARP requests

[RFC net-next 08/22] mpls: export mpls functions for use by mpls iptunnels

2015-07-10 Thread Thomas Graf
From: Roopa Prabhu ro...@cumulusnetworks.com Signed-off-by: Roopa Prabhu ro...@cumulusnetworks.com --- net/mpls/af_mpls.c | 11 --- net/mpls/internal.h | 3 +++ 2 files changed, 11 insertions(+), 3 deletions(-) diff --git a/net/mpls/af_mpls.c b/net/mpls/af_mpls.c index

[RFC net-next 13/22] vxlan: Flow based tunneling

2015-07-10 Thread Thomas Graf
. This member is removed again in a later commit after the indirect VXLAN receive API has been removed. Signed-off-by: Thomas Graf tg...@suug.ch Signed-off-by: Pravin B Shelar pshe...@nicira.com --- drivers/net/vxlan.c | 149 --- include/linux/skbuff.h

[RFC net-next 17/22] vxlan: Factor out device configuration

2015-07-10 Thread Thomas Graf
This factors out the device configuration out of the RTNL newlink API which allows for in-kernel creation of VXLAN net_devices. Signed-off-by: Thomas Graf tg...@suug.ch --- drivers/net/vxlan.c | 332 include/net/vxlan.h | 59 ++ 2

[RFC net-next 20/22] openvswitch: Abstract vport name through ovs_vport_name()

2015-07-10 Thread Thomas Graf
This allows to get rid of the get_name() vport ops later on. Signed-off-by: Thomas Graf tg...@suug.ch --- net/openvswitch/datapath.c | 4 ++-- net/openvswitch/vport-internal_dev.c | 1 - net/openvswitch/vport-netdev.c | 6 -- net/openvswitch/vport-netdev.h | 1 - net

[RFC net-next 16/22] fib: Add fib rule match on tunnel id

2015-07-10 Thread Thomas Graf
This add the ability to select a routing table based on the tunnel id which allows to maintain separate routing tables for each virtual tunnel network. ip rule add from all tunnel-id 100 lookup 100 ip rule add from all tunnel-id 200 lookup 200 Signed-off-by: Thomas Graf tg...@suug.ch

[RFC net-next 19/22] openvswitch: Move dev pointer into vport itself

2015-07-10 Thread Thomas Graf
This is the first step in representing all OVS vports as regular struct net_devices. Move the net_device pointer into the vport structure itself to get rid of struct vport_netdev. Signed-off-by: Thomas Graf tg...@suug.ch Signed-off-by: Pravin B Shelar pshe...@nicira.com --- net/openvswitch

[RFC net-next 21/22] openvswitch: Use regular VXLAN net_device device

2015-07-10 Thread Thomas Graf
(), vxlan_xmit_skb() since they are no longer needed. Signed-off-by: Thomas Graf tg...@suug.ch Signed-off-by: Pravin B Shelar pshe...@nicira.com --- drivers/net/vxlan.c| 242 +++ include/net/vxlan.h| 24 +-- net/openvswitch/Kconfig| 12 -- net

[RFC net-next 22/22] openvswitch: Use regular GRE net_device instead of vport

2015-07-10 Thread Thomas Graf
From: Pravin Shelar pshe...@nicira.com Removes all of the OVS specific GRE code and makes OVS use a GRE net_device. Signed-off-by: Pravin B Shelar pshe...@nicira.com --- net/core/dev.c | 5 +- net/ipv4/ip_gre.c | 165 +-

[RFC net-next 15/22] route: Per route IP tunnel metadata via lightweight tunnel

2015-07-10 Thread Thomas Graf
This introduces a new IP tunnel lightweight tunnel type which allows to specify IP tunnel instructions per route. Only IPv4 is supported at this point. Signed-off-by: Thomas Graf tg...@suug.ch --- drivers/net/vxlan.c| 10 +++- include/net/dst_metadata.h | 12 - include/net

[RFC net-next 07/22] ipv6: rt6_info output redirect to tunnel output

2015-07-10 Thread Thomas Graf
From: Roopa Prabhu ro...@cumulusnetworks.com This is similar to ipv4 redirect of dst output to lwtunnel output function for encapsulation and xmit. Signed-off-by: Roopa Prabhu ro...@cumulusnetworks.com --- net/ipv6/route.c | 1 + 1 file changed, 1 insertion(+) diff --git a/net/ipv6/route.c

[RFC net-next 18/22] openvswitch: Make tunnel set action attach a metadata dst

2015-07-10 Thread Thomas Graf
Utilize the new metadata dst to attach encapsulation instructions to the skb. The existing egress_tun_info via the OVS_CB() is left in place until all tunnel vports have been converted to the new method. Signed-off-by: Thomas Graf tg...@suug.ch Signed-off-by: Pravin B Shelar pshe...@nicira.com

[RFC net-next 14/22] route: Extend flow representation with tunnel key

2015-07-10 Thread Thomas Graf
Add a new flowi_tunnel structure which is a subset of ip_tunnel_key to allow routes to match on tunnel metadata. For now, the tunnel id is added to flowi_tunnel which allows for routes to be bound to specific virtual tunnels. Signed-off-by: Thomas Graf tg...@suug.ch --- include/net/flow.h | 7

[RFC net-next 09/22] mpls: ip tunnel support

2015-07-10 Thread Thomas Graf
From: Roopa Prabhu ro...@cumulusnetworks.com This implementation uses lwtunnel infrastructure to register hooks for mpls tunnel encaps. It picks cues from iptunnel_encaps infrastructure and previous mpls iptunnel RFC patches from Eric W. Biederman and Robert Shearman Signed-off-by: Roopa Prabhu

[RFC net-next 10/22] ip_tunnel: Make ovs_tunnel_info and ovs_key_ipv4_tunnel generic

2015-07-10 Thread Thomas Graf
to extend/modify these structures without affecting user ABI. Signed-off-by: Thomas Graf tg...@suug.ch --- include/net/ip_tunnels.h | 63 + include/uapi/linux/openvswitch.h | 2 +- net/openvswitch/actions.c| 2 +- net/openvswitch/datapath.h | 5

[RFC net-next 11/22] dst: Metadata destinations

2015-07-10 Thread Thomas Graf
allowing to interpret metadata in a later commit. Signed-off-by: Thomas Graf tg...@suug.ch --- include/net/dst.h | 5 ++- include/net/dst_metadata.h | 32 +++ net/core/dev.c | 2 +- net/core/dst.c | 76

[RFC net-next 12/22] arp: Inherit metadata dst when creating ARP requests

2015-07-10 Thread Thomas Graf
If output device wants to see the dst, inherit the dst of the original skb and pass it on to generate the ARP request. Signed-off-by: Thomas Graf tg...@suug.ch --- net/ipv4/arp.c | 71 +++--- 1 file changed, 43 insertions(+), 28 deletions

[RFC net-next 06/22] ipv4: redirect dst output to lwtunnel output

2015-07-10 Thread Thomas Graf
From: Roopa Prabhu ro...@cumulusnetworks.com For input routes with tunnel encap state this patch redirects dst output functions to lwtunnel_output which later resolves to the corresponding lwtunnel output function. This has been tested to work with mpls ip tunnels. Open items: Support for

Re: [RFC net-next 03/22] ipv4: support for fib route lwtunnel encap attributes

2015-07-10 Thread Thomas Graf
On 07/10/15 at 05:36pm, Eric Dumazet wrote: On Fri, 2015-07-10 at 16:19 +0200, Thomas Graf wrote: From: Roopa Prabhu ro...@cumulusnetworks.com + if (oif) + dev = __dev_get_by_index(net, oif); + ret = lwtunnel_build_state(dev, encap_type

Re: [RFC net-next 11/22] dst: Metadata destinations

2015-07-10 Thread Thomas Graf
On 07/10/15 at 09:57pm, Julian Anastasov wrote: Hello, On Fri, 10 Jul 2015, Thomas Graf wrote: --- a/net/ipv4/route.c +++ b/net/ipv4/route.c @@ -1691,6 +1691,8 @@ static int ip_route_input_slow(struct sk_buff *skb, __be32 daddr, __be32 saddr, by fib_lookup

Re: Summary lightweight tunnel discussion at NFWS

2015-07-06 Thread Thomas Graf
On 07/04/15 at 11:21pm, roopa wrote: Thx. I have fixed this since,...did not realize it came in as part of this RFC series. Other than that I managed to rebase my changes onto yours and it looks clean. Glad to know!. thanks Thomas. I had a few more changes (mostly cleanup/bug fixes, ipv6

Summary lightweight tunnel discussion at NFWS

2015-07-03 Thread Thomas Graf
On 06/18/15 at 09:49pm, Roopa Prabhu wrote: +#ifdef CONFIG_LWTUNNEL + if (fi-fib_nh-nh_lwtstate) { + struct lwtunnel_state *lwtstate; + + lwtstate = fi-fib_nh-nh_lwtstate; + if (nla_put_u16(skb, RTA_ENCAP_TYPE,

Re: [PATCH net-next RFC v2 1/3] lwt: infrastructure to support light weight tunnels

2015-07-03 Thread Thomas Graf
On 06/18/15 at 09:49pm, Roopa Prabhu wrote: +static inline struct lwtunnel_state *lwtunnel_skb_lwstate(struct sk_buff *skb) +{ + struct rtable *rt = (struct rtable *)skb_dst(skb); + + return rt-rt_lwtstate; +} Noticed while rebasing onto your patches. This needs an ifdef

Re: 4.1 regression in resizable hashtable tests

2015-07-02 Thread Thomas Graf
Thanks for the report. I think this is already fixed. Can you try with the following commit: commit 246b23a7695bd5a457aa51a36a948cce53d1d477 Author: Thomas Graf tg...@suug.ch Date: Thu Apr 30 22:37:44 2015 + rhashtable-test: Use walker to test bucket statistics As resizes may

Re: [PATCH v3.17 .. v3.19] lib/rhashtable: fix race between rhashtable_lookup_compare and hashtable resize

2015-06-30 Thread Thomas Graf
inside of rhashtable_lookup_compare()) nft_hash is not affected as it doesn't use the lookup API until 4.0. Acked-by: Thomas Graf tg...@suug.ch -- To unsubscribe from this list: send the line unsubscribe netdev in the body of a message to majord...@vger.kernel.org More majordomo info at http

Re: [PATCH net-next RFC v2 3/3] mpls: support for ip tunnels

2015-06-21 Thread Thomas Graf
On 06/18/15 at 09:49pm, Roopa Prabhu wrote: diff --git a/net/mpls/Kconfig b/net/mpls/Kconfig index 17bde79..3e87a6b 100644 --- a/net/mpls/Kconfig +++ b/net/mpls/Kconfig @@ -27,4 +27,9 @@ config MPLS_ROUTING help Add support for forwarding of mpls packets. +config

Re: [PATCH net-next RFC v2 1/3] lwt: infrastructure to support light weight tunnels

2015-06-21 Thread Thomas Graf
On 06/20/15 at 07:27am, roopa wrote: On 6/19/15, 11:39 AM, Robert Shearman wrote: On 19/06/15 19:34, roopa wrote: On 6/19/15, 10:25 AM, Robert Shearman wrote: n 19/06/15 16:14, roopa wrote: In the netdevice case, this output function is not called atall. It should just follow the existing

Re: [PATCH net-next RFC v2 2/3] ipv4: add support for light weight tunnel encap attributes

2015-06-21 Thread Thomas Graf
On 06/18/15 at 09:49pm, Roopa Prabhu wrote: From: Roopa Prabhu ro...@cumulusnetworks.com Introduces two netlink attributes RTA_ENCAP_TYPE and RTA_ENCAP to support attaching encap information to ipv4 routes. RTA_ENCAP is a nested attribute as suggested by Thomas (and also as Robert had it

Re: [PATCH net-next RFC v2 1/3] lwt: infrastructure to support light weight tunnels

2015-06-21 Thread Thomas Graf
On 06/18/15 at 09:49pm, Roopa Prabhu wrote: +#include net/ip.h +#include net/rtnetlink.h + +#define LWTUNNEL_HASH_BITS 7 +#define LWTUNNEL_HASH_SIZE (1 LWTUNNEL_HASH_BITS) + +struct lwtunnel_hdr { + int len; + __u8data[0]; +}; The name header is a

Re: [RFC net-next 0/3] Proposal for VRF-lite

2015-06-12 Thread Thomas Graf
On 06/10/15 at 01:43pm, Shrijeet Mukherjee wrote: On Tue, Jun 9, 2015 at 3:15 AM, Thomas Graf tg...@suug.ch wrote: Do I understand this correctly that swp* represent veth pairs? Why do you have distinct addresses on each peer of the pair? Are the addresses in N2 and N3 considered private

Re: [RFC net-next 0/3] Proposal for VRF-lite

2015-06-09 Thread Thomas Graf
On 06/08/15 at 11:35am, Shrijeet Mukherjee wrote: [...] model with some performance paths that need optimization. (Specifically the output route selector that Roopa, Robert, Thomas and EricB are currently discussing on the MPLS thread) Thanks for posting these patches just in time. This

Re: [PATCH WIP RFC 0/3] mpls: support for ler

2015-06-08 Thread Thomas Graf
On 06/08/15 at 08:17am, roopa wrote: ack, that sounds intuitive. With RTA_ENCAP and the mpls examples i was using it looks something like the below for (1) ip route add 10.1.1.0/30 encap mpls 200 via 10.1.1.1 dev eth0 The tunnel dst is parsed and understood by the light weight tunnel

Re: [PATCH WIP RFC 0/3] mpls: support for ler

2015-06-08 Thread Thomas Graf
On 06/05/15 at 07:54pm, roopa wrote: On 6/5/15, 8:26 AM, Robert Shearman wrote: It isn't clear to me what the strategy here is for dealing with tunnel encaps that aren't bound to an interface. Thomas, I presume you would prefer not to force the user to keep track of changes to the output

Re: [PATCH WIP RFC 0/3] mpls: support for ler

2015-06-05 Thread Thomas Graf
On 06/03/15 at 07:21am, Roopa Prabhu wrote: From: Roopa Prabhu ro...@cumulusnetworks.com This is still WIP and incomplete. Posting it here because of the other discussions happening around mpls ler in the context of Roberts code and I happened to mention this implementation. This was in

Networking microconf accepted - Last day early bird rate

2015-06-04 Thread Thomas Graf
The networking microconference has been formally accepted into the Linux Plumbers Aug 19-21 in Seattle. Tomorrow, June 5, is the last day of the early registration rate. Please register [0] if you are planning to attend. As in previous years, the conference has a maximum capacity and once reached,

Re: [RFC net-next 0/6] net: Identifier Locator Addressing

2015-06-04 Thread Thomas Graf
On 06/03/15 at 12:58pm, Tom Herbert wrote: The data path for ILA is a simple NAT translation that only operates on the upper 64 bits of a destination address in IPv6 packets. The basic process is: 1) Lookup 64 bit identifier (lower 64 bits of destination) in a table 2) If a match is

Re: [RFC net-next 6/6] ipvlan: Call ILA in incoming and outgoing receive paths

2015-06-04 Thread Thomas Graf
On 06/03/15 at 12:58pm, Tom Herbert wrote: diff --git a/drivers/net/ipvlan/ipvlan_main.c b/drivers/net/ipvlan/ipvlan_main.c index 1acc283..e029fad 100644 --- a/drivers/net/ipvlan/ipvlan_main.c +++ b/drivers/net/ipvlan/ipvlan_main.c @@ -9,6 +9,10 @@ #include ipvlan.h +bool query_ila

Re: [RFC net-next 2/6] net: Identfier Locator Addressing module

2015-06-04 Thread Thomas Graf
On 06/03/15 at 12:58pm, Tom Herbert wrote: +static struct genl_family ila_nl_family = { + .id = GENL_ID_GENERATE, + .hdrsize= 0, + .name = ILA_GENL_NAME, + .version= ILA_GENL_VERSION, + .maxattr= ILA_ATTR_MAX, + .netnsok

Re: [net-next RFC 08/14] openvswitch: Allocate attach ip_tunnel_info for tunnel set action

2015-06-03 Thread Thomas Graf
On 06/03/15 at 05:29pm, Jiri Benc wrote: On Mon, 1 Jun 2015 16:27:32 +0200, Thomas Graf wrote: --- a/net/openvswitch/flow.h +++ b/net/openvswitch/flow.h @@ -45,6 +45,11 @@ struct sk_buff; #define TUN_METADATA_OPTS(flow_key, opt_len) \ ((void *)((flow_key)-tun_opts

Re: [RFC net-next 3/3] mpls: new ipmpls device for encapsulating IP packets as mpls

2015-06-03 Thread Thomas Graf
On 06/02/15 at 06:23pm, Eric W. Biederman wrote: Thomas I may have misunderstood what you are trying to do. Is what you were aiming for roughly the existing RTA_FLOW so you can transmit packets out one network device and have enough information to know which of a set of tunnels of a given

<    1   2   3   4   5   6   7   8   9   10   >