When calculating the multipath hash for input routes the flow info is not available and therefore should not be used.
Fixes: 24ba14406c5c ("route: Add multipath_hash in flowi_common to make user-define hash") Signed-off-by: Ido Schimmel <ido...@mellanox.com> Cc: wenxu <we...@ucloud.cn> --- net/ipv4/route.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/ipv4/route.c b/net/ipv4/route.c index 7cf4c8305071..e3ac458b5d8b 100644 --- a/net/ipv4/route.c +++ b/net/ipv4/route.c @@ -1820,7 +1820,7 @@ static void ip_multipath_l3_keys(const struct sk_buff *skb, int fib_multipath_hash(const struct net *net, const struct flowi4 *fl4, const struct sk_buff *skb, struct flow_keys *flkeys) { - u32 multipath_hash = fl4->flowi4_multipath_hash; + u32 multipath_hash = fl4 ? fl4->flowi4_multipath_hash : 0; struct flow_keys hash_keys; u32 mhash; -- 2.20.1