On 16/03/17 18:49, Nikolay Aleksandrov wrote: > On 16/03/17 18:41, Stephen Hemminger wrote: >> On Thu, 16 Mar 2017 15:28:00 +0200 >> Nikolay Aleksandrov <niko...@cumulusnetworks.com> wrote: >> >>> diff --git a/net/ipv4/sysctl_net_ipv4.c b/net/ipv4/sysctl_net_ipv4.c >>> index d6880a6149ee..62c4f94923e5 100644 >>> --- a/net/ipv4/sysctl_net_ipv4.c >>> +++ b/net/ipv4/sysctl_net_ipv4.c >>> @@ -1004,6 +1004,15 @@ static struct ctl_table ipv4_net_table[] = { >>> .extra1 = &zero, >>> .extra2 = &one, >>> }, >>> + { >>> + .procname = "fib_multipath_hash_policy", >>> + .data = >>> &init_net.ipv4.sysctl_fib_multipath_hash_policy, >>> + .maxlen = sizeof(int), >>> + .mode = 0644, >>> + .proc_handler = proc_dointvec_minmax, >>> + .extra1 = &zero, >>> + .extra2 = &one, >>> + >> >> Rather than having magic integer values, it would be better to use >> strings (like TCP congestion control). Especially if you want to support >> more values in the future. > > With strings we'll need two sysctls - one to export the available ones, and > one to set. > I too am not happy with plain integers as I've said in v1 of this patch but > if people > are okay with having two new sysctls exported then I don't mind reworking it > with strings. > Or any other ideas are welcome. > >> >> Also what about IPv6? >> > > Patches are welcome, too. :-) > We can update it at any time, IPv4 and 6 have been different for a very long > time > and it's not the point of this patch to bring them closer, though IPv6 already > does L4 by default.
Just to clarify, we're interested in getting IPv4 and 6 on the same level and will work towards that but let's take it a step at a time.