From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stephen Hemminger Subject: Re: [PATCH net-next v3] net: ipv4: add support for ECMP hash policy choice Date: Tue, 14 Mar 2017 13:25:06 -0700 Message-ID: <20170314132506.6233b1e7@xeon-e3> References: <1489505775-2913-1-git-send-email-nikolay@cumulusnetworks.com> <20170314085502.47d48a4e@xeon-e3> <8088fe5f-0c0b-bdba-4fba-e9e28bbed02e@cumulusnetworks.com> <20170314.114837.619141079617104809.davem@davemloft.net> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Cc: nikolay@cumulusnetworks.com, netdev@vger.kernel.org, roopa@cumulusnetworks.com, dsa@cumulusnetworks.com, jkbs@redhat.com, edumazet@google.com, pch@ordbogen.com To: David Miller Return-path: Received: from mail-pg0-f50.google.com ([74.125.83.50]:33641 "EHLO mail-pg0-f50.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752831AbdCNUZP (ORCPT ); Tue, 14 Mar 2017 16:25:15 -0400 Received: by mail-pg0-f50.google.com with SMTP id n190so6858768pga.0 for ; Tue, 14 Mar 2017 13:25:14 -0700 (PDT) In-Reply-To: <20170314.114837.619141079617104809.davem@davemloft.net> Sender: netdev-owner@vger.kernel.org List-ID: On Tue, 14 Mar 2017 11:48:37 -0700 (PDT) David Miller wrote: > From: Nikolay Aleksandrov > Date: Tue, 14 Mar 2017 17:58:46 +0200 > > > On 14/03/17 17:55, Stephen Hemminger wrote: > >> On Tue, 14 Mar 2017 17:36:15 +0200 > >> Nikolay Aleksandrov wrote: > >> > >>> This patch adds support for ECMP hash policy choice via a new sysctl > >>> called fib_multipath_hash_policy and also adds support for L4 hashes. > >>> The current values for fib_multipath_hash_policy are: > >>> 0 - layer 3 (default) > >>> 1 - layer 4 > >>> If there's an skb hash already set and it matches the chosen policy then it > >>> will be used instead of being calculated (currently only for L4). > >>> In L3 mode we always calculate the hash due to the ICMP error special > >>> case, the flow dissector's field consistentification should handle the > >>> address order thus we can remove the address reversals. > >>> > >>> Signed-off-by: Nikolay Aleksandrov > >> > >> It is good to see ECMP come back from the grave. > >> Linux used to support it long ago but was abandoned after it was unstable > >> and removed from iproute2 in 2012. > >> > >> The old API was through route attributes which makes more sense than > >> doing it with sysctl. It makes more sense to use netlink instead. > >> Therefore please go back and do something like the old API rather than doing it through > >> sysctl. > >> > > > > That's what my initial version did, but this was discussed during NetConf in Seville > > and it was decided that it's best to make a global sysctl, thus the change. > > Correct, we discussed this, and we all agreed to only have a sysctl for now. Why? If you are going to have private discussions please post the rationale in public.