From: Ying Xue Date: Tue, 24 Mar 2015 08:59:21 +0000 (+0800) Subject: tipc: fix compile error when IPV6=m and TIPC=y X-Git-Tag: firefly_0821_release~176^2~1974^2~153 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=ed3e852aa5039fda5a9f53c716c7466913403288;p=firefly-linux-kernel-4.4.55.git tipc: fix compile error when IPV6=m and TIPC=y When IPV6=m and TIPC=y, below error will appear during building kernel image: net/tipc/udp_media.c:196: undefined reference to `ip6_dst_lookup' make: *** [vmlinux] Error 1 As ip6_dst_lookup() is implemented in IPV6 and IPV6 is compiled as module, ip6_dst_lookup() is not built-in core kernel image. As a result, compiler cannot find 'ip6_dst_lookup' reference while compiling TIPC code into core kernel image. But with the method introduced by commit 5f81bd2e5d80 ("ipv6: export a stub for IPv6 symbols used by vxlan"), we can avoid the compile error through "ipv6_stub" pointer to access ip6_dst_lookup(). Fixes: d0f91938bede ("tipc: add ip/udp media type") Suggested-by: Marcelo Ricardo Leitner Signed-off-by: Ying Xue Signed-off-by: David S. Miller --- diff --git a/net/tipc/udp_media.c b/net/tipc/udp_media.c index ac89101e5d1b..ef3d7aa2854a 100644 --- a/net/tipc/udp_media.c +++ b/net/tipc/udp_media.c @@ -193,7 +193,7 @@ static int tipc_udp_send_msg(struct net *net, struct sk_buff *skb, .saddr = src->ipv6, .flowi6_proto = IPPROTO_UDP }; - err = ip6_dst_lookup(ub->ubsock->sk, &ndst, &fl6); + err = ipv6_stub->ipv6_dst_lookup(ub->ubsock->sk, &ndst, &fl6); if (err) goto tx_error; ttl = ip6_dst_hoplimit(ndst);