diff options
author | David S. Miller <davem@davemloft.net> | 2015-07-31 15:21:30 -0700 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2015-07-31 15:21:30 -0700 |
commit | 7576012e61d96a9369c8f98e6373a4de384d3126 (patch) | |
tree | 4cf1e6e3ec1d76e730778ec0d8b2a7efbe6b9499 /drivers/net/vxlan.c | |
parent | d3aa45ce6b94c65b83971257317867db13e5f492 (diff) | |
parent | bf21563acc1de2391d21ac2141c3471aa4815c1a (diff) | |
download | op-kernel-dev-7576012e61d96a9369c8f98e6373a4de384d3126.zip op-kernel-dev-7576012e61d96a9369c8f98e6373a4de384d3126.tar.gz |
Merge branch 'mpls-build-fix'
Roopa Prabhu says:
====================
af_mpls: fix undefined reference to ip6_route_output with CONFIG_IPV6=n
This patch series uses ipv6_stub_impl.ipv6_dst_lookup instead of
ip6_route_output. Follows the vxlan drivers usage of
ipv6_stub_impl.ipv6_dst_lookup.
There is no sk in the af_mpls context from where
ipv6_stub_impl.ipv6_dst_lookup is used. sk appears to be needed
to get the namespace 'net' and is optional otherwise. This patch series
changes ipv6_stub_impl.ipv6_dst_lookup to take net argument. sk remains
optional.
v1 - v2: use IS_BUILTIN
v2 - v3: Use new Kconfig option that depends on (IPV6 || IPV6=n) as
suggested by Dave. Also uses IS_ERR as suggested by Thomas.
v3 - v4: Include missed case of (MPLS_ROUTING=y && IPV6=m) reported by
Dave.
v4 - v5: Use ipv6_stub_impl.ipv6_dst_lookup as suggested by Hannes
v5 - v6: protect against null ipv6_stub by statically declaring
a ipv6_dst_lookup NOP func
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/vxlan.c')
-rw-r--r-- | drivers/net/vxlan.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c index 81f0f24..beed5d4 100644 --- a/drivers/net/vxlan.c +++ b/drivers/net/vxlan.c @@ -2034,7 +2034,7 @@ static void vxlan_xmit_one(struct sk_buff *skb, struct net_device *dev, fl6.flowi6_mark = skb->mark; fl6.flowi6_proto = IPPROTO_UDP; - if (ipv6_stub->ipv6_dst_lookup(sk, &ndst, &fl6)) { + if (ipv6_stub->ipv6_dst_lookup(vxlan->net, sk, &ndst, &fl6)) { netdev_dbg(dev, "no route to %pI6\n", &dst->sin6.sin6_addr); dev->stats.tx_carrier_errors++; |