Re: [PATCH net-next] net: Fix suspicious RCU usage in fib_rebalance

2015-10-15 Thread Peter Nørlund
__in_dev_get_rtnl(nexthop_nh->nh_dev); > > if (nexthop_nh->nh_flags & RTNH_F_DEAD) { > upper_bound = -1; Totally missed that. You are right. All paths to fib_rebalance have a rtnl_lock or ASSERT_RTNL. Besides, fib_rebalance would have a race without the lock. Best Regards Peter Nørlund -- 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

[PATCH v2 net-next] ipv4: Fix compilation errors in fib_rebalance

2015-10-05 Thread Peter Nørlund
: L3 hash-based multipath") Signed-off-by: Peter Nørlund --- net/ipv4/fib_semantics.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/net/ipv4/fib_semantics.c b/net/ipv4/fib_semantics.c index 0c49d2f..7bd698c 100644 --- a/net/ipv4/fib_semantics.c +++ b/net/ipv4/fi

Re: [PATCH net-next] Fixes: 0e884c7 ipv4: L3 hash-based multipath: tag

2015-10-05 Thread Peter Nørlund
e changes small. I'll use shift in the revised patch. Best Regards Peter Nørlund -- 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

[PATCH net-next] Fixes: 0e884c7 ipv4: L3 hash-based multipath: tag

2015-10-05 Thread Peter Nørlund
commit 0e884c78ee19e902f300ed147083c28a0c6302f0 ("ipv4: L3 hash-based multipath") broke compilation for i386 and arm due to dependency on 64-bit division. The problem is simply solved by using the proper macro for 64-bit divison. Signed-off-by: Peter Nørlund --- net/ipv4/fib_seman

Re: [net-next:master 647/682] fib_semantics.c:undefined reference to `__divdi3'

2015-10-05 Thread Peter Nørlund
patch fixing this particular problem? I imagine bisecting becomes annoying when a particular commit doesn't compile. The ARM compilation errors is apparently solved by the same fix. Best Regards Peter Nørlund -- 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

[PATCH v5 net-next 2/2] ipv4: ICMP packet inspection for multipath

2015-09-30 Thread Peter Nørlund
From: Peter Nørlund ICMP packets are inspected to let them route together with the flow they belong to, minimizing the chance that a problematic path will affect flows on other paths, and so that anycast environments can work with ECMP. Signed-off-by: Peter Nørlund --- include/net/route.h

[PATCH v5 net-next 1/2] ipv4: L3 hash-based multipath

2015-09-30 Thread Peter Nørlund
From: Peter Nørlund Replaces the per-packet multipath with a hash-based multipath using source and destination address. Signed-off-by: Peter Nørlund --- include/net/ip_fib.h | 14 - net/ipv4/fib_semantics.c | 140 +- net/ipv4/route.c

[PATCH v5 net-next 0/2] ipv4: Hash-based multipath routing

2015-09-30 Thread Peter Nørlund
ation - upper_bound is now inclusive to avoid overflow - Use a callback to postpone extracting flow information until necessary - Skipped ICMP inspection entirely with L4 hashing - Handle newly added sysctl ignore_routes_with_linkdown Best Regards Peter Nørlund Peter Nørlund (2): ipv4: L3 hash-

Re: Per-flow IPv4 ECMP

2015-09-29 Thread Peter Nørlund
case, but I'd like to understand why this is > > supported, and whether I can rely on it in future. > > > > Could anyone give me a little clarification on whether this is now > > supported by some means other than the route cache, and whether > > that support is int

Re: [PATCH v4 net-next 0/2] ipv4: Hash-based multipath routing

2015-09-29 Thread Peter Nørlund
On Mon, 28 Sep 2015 19:55:41 -0700 (PDT) David Miller wrote: > From: David Miller > Date: Mon, 28 Sep 2015 19:33:55 -0700 (PDT) > > > From: Peter Nørlund > > Date: Wed, 23 Sep 2015 21:49:35 +0200 > > > >> When the routing cache was removed in 3.6, the I

Re: [PATCH v4 net-next 1/2] ipv4: L3 hash-based multipath

2015-09-23 Thread Peter Nørlund
On Wed, 23 Sep 2015 16:12:42 -0700 Tom Herbert wrote: > On Wed, Sep 23, 2015 at 2:43 PM, Peter Nørlund > wrote: > > On Wed, 23 Sep 2015 14:00:43 -0700 > > Tom Herbert wrote: > > > >> On Wed, Sep 23, 2015 at 12:49 PM, Peter Nørlund > >> wrote: >

Re: [PATCH v4 net-next 1/2] ipv4: L3 hash-based multipath

2015-09-23 Thread Peter Nørlund
On Wed, 23 Sep 2015 14:00:43 -0700 Tom Herbert wrote: > On Wed, Sep 23, 2015 at 12:49 PM, Peter Nørlund > wrote: > > Replaces the per-packet multipath with a hash-based multipath using > > source and destination address. > > > It's good that round robin is going

Re: [PATCH v4 net-next 2/2] ipv4: ICMP packet inspection for multipath

2015-09-23 Thread Peter Nørlund
On Wed, 23 Sep 2015 14:01:23 -0700 Tom Herbert wrote: > On Wed, Sep 23, 2015 at 12:49 PM, Peter Nørlund > wrote: > > ICMP packets are inspected to let them route together with the flow > > they belong to, minimizing the chance that a problematic path will > > affect flow

Re: [PATCH v4 net-next 1/2] ipv4: L3 hash-based multipath

2015-09-23 Thread Peter Nørlund
On Wed, 23 Sep 2015 14:00:43 -0700 Tom Herbert wrote: > On Wed, Sep 23, 2015 at 12:49 PM, Peter Nørlund > wrote: > > Replaces the per-packet multipath with a hash-based multipath using > > source and destination address. > > > It's good that round robin is going

[PATCH v4 net-next 0/2] ipv4: Hash-based multipath routing

2015-09-23 Thread Peter Nørlund
rflow - Use a callback to postpone extracting flow information until necessary - Skipped ICMP inspection entirely with L4 hashing - Handle newly added sysctl ignore_routes_with_linkdown Best Regards Peter Nørlund Peter Nørlund (2): ipv4: L3 hash-based multipath ipv4: ICMP packet inspe

[PATCH v4 net-next 1/2] ipv4: L3 hash-based multipath

2015-09-23 Thread Peter Nørlund
Replaces the per-packet multipath with a hash-based multipath using source and destination address. Signed-off-by: Peter Nørlund --- include/net/ip_fib.h | 14 - net/ipv4/fib_semantics.c | 140 +- net/ipv4/route.c | 16 -- 3

[PATCH v4 net-next 2/2] ipv4: ICMP packet inspection for multipath

2015-09-23 Thread Peter Nørlund
ICMP packets are inspected to let them route together with the flow they belong to, minimizing the chance that a problematic path will affect flows on other paths, and so that anycast environments can work with ECMP. Signed-off-by: Peter Nørlund --- include/net/route.h | 11 +- net

Re: [PATCH v3 net-next 1/2] ipv4: L3 hash-based multipath

2015-09-23 Thread Peter Nørlund
On Mon, 21 Sep 2015 10:52:13 -0600 David Ahern wrote: > On 9/15/15 2:29 PM, Peter Nørlund wrote: > > @@ -1094,8 +1142,15 @@ struct fib_info *fib_create_info(struct > > fib_config *cfg) > > > > change_nexthops(fi) { > > fib_info_update_nh_sa

Re: [PATCH v3 net-next 1/2] ipv4: L3 hash-based multipath

2015-09-15 Thread Peter Nørlund
On Tue, 15 Sep 2015 14:40:48 -0700 Alexander Duyck wrote: > On 09/15/2015 01:29 PM, Peter Nørlund wrote: > > Replaces the per-packet multipath with a hash-based multipath using > > source and destination address. > > > > Signed-off-by: Peter Nørlund > > --- >

[PATCH v3 net-next 2/2] ipv4: ICMP packet inspection for multipath

2015-09-15 Thread Peter Nørlund
ICMP packets are inspected to let them route together with the flow they belong to, minimizing the chance that a problematic path will affect flows on other paths, and so that anycast environments can work with ECMP. Signed-off-by: Peter Nørlund --- include/net/route.h | 12 +++- net

[PATCH v3 net-next 1/2] ipv4: L3 hash-based multipath

2015-09-15 Thread Peter Nørlund
Replaces the per-packet multipath with a hash-based multipath using source and destination address. Signed-off-by: Peter Nørlund --- include/net/ip_fib.h | 11 ++-- net/ipv4/fib_semantics.c | 137 +-- net/ipv4/route.c | 23 +++- 3

[PATCH v3 net-next 0/2] ipv4: Hash-based multipath routing

2015-09-15 Thread Peter Nørlund
with L4 hashing - Handle newly added sysctl ignore_routes_with_linkdown Best Regards Peter Nørlund Peter Nørlund (2): ipv4: L3 hash-based multipath ipv4: ICMP packet inspection for multipath include/net/ip_fib.h | 11 +++- include/net/route.h | 12 +++- net

Re: [PATCH v2 net-next 0/3] ipv4: Hash-based multipath routing

2015-08-30 Thread Peter Nørlund
On Sat, 29 Aug 2015 13:59:08 -0700 Tom Herbert wrote: > On Sat, Aug 29, 2015 at 1:46 PM, David Miller > wrote: > > From: Peter Nørlund > > Date: Sat, 29 Aug 2015 22:31:15 +0200 > > > >> On Sat, 29 Aug 2015 13:14:29 -0700 (PDT) > >> David Miller

Re: [PATCH v2 net-next 0/3] ipv4: Hash-based multipath routing

2015-08-29 Thread Peter Nørlund
On Sat, 29 Aug 2015 13:14:29 -0700 (PDT) David Miller wrote: > From: p...@ordbogen.com > Date: Fri, 28 Aug 2015 22:00:47 +0200 > > > When the routing cache was removed in 3.6, the IPv4 multipath > > algorithm changed from more or less being destination-based into > > being quasi-random per-packe

Re: [PATCH net-next 2/3] ipv4: L3 and L4 hash-based multipath routing

2015-06-20 Thread Peter Nørlund
On Thu, 18 Jun 2015 15:52:22 -0700 Alexander Duyck wrote: > > > On 06/17/2015 01:08 PM, Peter Nørlund wrote: > > This patch adds L3 and L4 hash-based multipath routing, selectable > > on a per-route basis with the reintroduced RTA_MP_ALGO attribute. > > The defau

Re: [PATCH net-next 1/3] ipv4: Lock-less per-packet multipath

2015-06-20 Thread Peter Nørlund
On Thu, 18 Jun 2015 12:42:05 -0700 Alexander Duyck wrote: > On 06/17/2015 01:08 PM, Peter Nørlund wrote: > > The current multipath attempted to be quasi random, but in most > > cases it behaved just like a round robin balancing. This patch > > refactors the algorithm to b

[PATCH net-next 3/3] ipv4: ICMP packet inspection for multipath

2015-06-17 Thread Peter Nørlund
ICMP packets are inspected to let them route together with the flow they belong to, allowing anycast environments to work with ECMP. Signed-off-by: Peter Nørlund --- net/ipv4/icmp.c | 27 ++- net/ipv4/route.c | 80 ++-- 2

[PATCH net-next 1/3] ipv4: Lock-less per-packet multipath

2015-06-17 Thread Peter Nørlund
thresholds, minimizing disruption in case of failing paths or route replacements. Signed-off-by: Peter Nørlund --- include/net/ip_fib.h | 6 +-- net/ipv4/Kconfig | 1 + net/ipv4/fib_semantics.c | 116 ++- 3 files changed, 68 insertions(+), 55

[PATCH net-next 0/3] ipv4: Hash-based multipath routing

2015-06-17 Thread Peter Nørlund
patch is accepted, a follow-up patch to iproute2 will also be submitted. Best regards, Peter Nørlund Peter Nørlund (3): ipv4: Lock-less per-packet multipath ipv4: L3 and L4 hash-based multipath routing ipv4: ICMP packet inspection for multipath include/net/ip_fib.h

[PATCH net-next 2/3] ipv4: L3 and L4 hash-based multipath routing

2015-06-17 Thread Peter Nørlund
This patch adds L3 and L4 hash-based multipath routing, selectable on a per-route basis with the reintroduced RTA_MP_ALGO attribute. The default is now RT_MP_ALG_L3_HASH. Signed-off-by: Peter Nørlund --- include/net/ip_fib.h | 4 ++- include/net/route.h| 5 ++-- include