ipv6: Add support for non-equal-cost multipath
authorIdo Schimmel <idosch@mellanox.com>
Tue, 9 Jan 2018 14:40:28 +0000 (16:40 +0200)
committerDavid S. Miller <davem@davemloft.net>
Wed, 10 Jan 2018 20:14:44 +0000 (15:14 -0500)
commit398958ae48f44bb036d0fa9829cd489270bf1fc2
tree1af7f7291b37d5e8c3106540e06a041d9f563d83
parent3d709f69a3e749f4d1c195dab499df8ab66e25a8
ipv6: Add support for non-equal-cost multipath

The use of hash-threshold instead of modulo-N makes it trivial to add
support for non-equal-cost multipath.

Instead of dividing the multipath hash function's output space equally
between the nexthops, each nexthop is assigned a region size which is
proportional to its weight.

Signed-off-by: Ido Schimmel <idosch@mellanox.com>
Acked-by: David Ahern <dsahern@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/ip6_fib.h
net/ipv6/route.c