Re: linux-next: build failure after merge of the net-next tree

From: Sven Joachim
Date: Mon Aug 17 2020 - 03:21:20 EST


On 2020-07-29 21:27 +1000, Stephen Rothwell wrote:

> Hi all,
>
> After merging the net-next tree, today's linux-next build (i386 defconfig)
> failed like this:
>
> x86_64-linux-gnu-ld: net/core/fib_rules.o: in function `fib_rules_lookup':
> fib_rules.c:(.text+0x5c6): undefined reference to `fib6_rule_match'
> x86_64-linux-gnu-ld: fib_rules.c:(.text+0x5d8): undefined reference to `fib6_rule_match'
> x86_64-linux-gnu-ld: fib_rules.c:(.text+0x64d): undefined reference to `fib6_rule_action'
> x86_64-linux-gnu-ld: fib_rules.c:(.text+0x662): undefined reference to `fib6_rule_action'
> x86_64-linux-gnu-ld: fib_rules.c:(.text+0x67a): undefined reference to `fib6_rule_suppress'
> x86_64-linux-gnu-ld: fib_rules.c:(.text+0x68d): undefined reference to `fib6_rule_suppress'

FWIW, I saw these errors in 5.9-rc1 today, so the fix in commit
41d707b7332f ("fib: fix fib_rules_ops indirect calls wrappers") was
apparently not sufficient.

,----
| $ grep IPV6 .config
| CONFIG_IPV6=m
| # CONFIG_IPV6_ROUTER_PREF is not set
| # CONFIG_IPV6_OPTIMISTIC_DAD is not set
| # CONFIG_IPV6_MIP6 is not set
| # CONFIG_IPV6_ILA is not set
| # CONFIG_IPV6_VTI is not set
| CONFIG_IPV6_SIT=m
| # CONFIG_IPV6_SIT_6RD is not set
| CONFIG_IPV6_NDISC_NODETYPE=y
| CONFIG_IPV6_TUNNEL=m
| CONFIG_IPV6_MULTIPLE_TABLES=y
| # CONFIG_IPV6_SUBTREES is not set
| # CONFIG_IPV6_MROUTE is not set
| # CONFIG_IPV6_SEG6_LWTUNNEL is not set
| # CONFIG_IPV6_SEG6_HMAC is not set
| # CONFIG_IPV6_RPL_LWTUNNEL is not set
| # CONFIG_NF_SOCKET_IPV6 is not set
| # CONFIG_NF_TPROXY_IPV6 is not set
| # CONFIG_NF_DUP_IPV6 is not set
| # CONFIG_NF_REJECT_IPV6 is not set
| # CONFIG_NF_LOG_IPV6 is not set
| CONFIG_NF_DEFRAG_IPV6=m
`----

> Caused by commit
>
> b9aaec8f0be5 ("fib: use indirect call wrappers in the most common fib_rules_ops")
>
> # CONFIG_IPV6_MULTIPLE_TABLES is not set
>
> I have reverted that commit for today.

Cheers,
Sven