From: Pravin B Shelar Date: Thu, 27 Aug 2015 06:46:49 +0000 (-0700) Subject: geneve: Use skb mark and protocol to lookup route. X-Git-Url: https://git.stricted.de/?a=commitdiff_plain;h=980c394c53e420f7e5484d011378a4bec861ec7a;p=GitHub%2FLineageOS%2Fandroid_kernel_motorola_exynos9610.git geneve: Use skb mark and protocol to lookup route. On packet transmit path geneve need to lookup route. Following patch improves route lookup using more parameters. Signed-off-by: Pravin B Shelar Reviewed-by: Jesse Gross Acked-by: Thomas Graf Acked-by: John W. Linville Signed-off-by: David S. Miller --- diff --git a/drivers/net/geneve.c b/drivers/net/geneve.c index 95e9da0a52f2..3c5b2b100943 100644 --- a/drivers/net/geneve.c +++ b/drivers/net/geneve.c @@ -202,6 +202,9 @@ static netdev_tx_t geneve_xmit(struct sk_buff *skb, struct net_device *dev) memset(&fl4, 0, sizeof(fl4)); fl4.flowi4_tos = RT_TOS(tos); fl4.daddr = geneve->remote.sin_addr.s_addr; + fl4.flowi4_mark = skb->mark; + fl4.flowi4_proto = IPPROTO_UDP; + rt = ip_route_output_key(geneve->net, &fl4); if (IS_ERR(rt)) { netdev_dbg(dev, "no route to %pI4\n", &fl4.daddr);