ipv6: ignore dst hint for multipath routes
authorSriram Yagnaraman <sriram.yagnaraman@est.tech>
Thu, 31 Aug 2023 08:03:31 +0000 (10:03 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 19 Sep 2023 10:28:01 +0000 (12:28 +0200)
commit7ddfe350e2554a28551333f4f50f95f5290dcf72
tree624fab6892f5f0d0a7357854591effeebc3fdd88
parent0b2ee66411fe09584501140e6fa3578bc5063900
ipv6: ignore dst hint for multipath routes

[ Upstream commit 8423be8926aa82cd2e28bba5cc96ccb72c7ce6be ]

Route hints when the nexthop is part of a multipath group causes packets
in the same receive batch to be sent to the same nexthop irrespective of
the multipath hash of the packet. So, do not extract route hint for
packets whose destination is part of a multipath group.

A new SKB flag IP6SKB_MULTIPATH is introduced for this purpose, set the
flag when route is looked up in fib6_select_path() and use it in
ip6_can_use_hint() to check for the existence of the flag.

Fixes: 197dbf24e360 ("ipv6: introduce and uses route look hints for list input.")
Signed-off-by: Sriram Yagnaraman <sriram.yagnaraman@est.tech>
Reviewed-by: Ido Schimmel <idosch@nvidia.com>
Reviewed-by: David Ahern <dsahern@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Sasha Levin <sashal@kernel.org>
include/linux/ipv6.h
net/ipv6/ip6_input.c
net/ipv6/route.c