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

From: Randy Dunlap <[email-masked]>
Date: Fri, 28 Aug 2020 16:42:00 -0700

On 8/28/20 4:16 PM, Brian Vazquez wrote:
> On Fri, Aug 28, 2020 at 8:12 AM Randy Dunlap <[email-masked]> wrote:
>>
>> On 8/28/20 8:09 AM, Sven Joachim wrote:
>>> On 2020-08-27 11:12 -0700, Brian Vazquez wrote:
>>>
>>>> I've been trying to reproduce it with your config but I didn't
>>>> succeed. I also looked at the file after the preprocessor and it
>>>> looked good:
>>>>
>>>> ret = ({ __builtin_expect(!!(ops->match == fib6_rule_match), 1) ?
>>>> fib6_rule_match(rule, fl, flags) : ops->match(rule, fl, flags); })
>>>
>>> However, in my configuration I have CONFIG_IPV6=m, and so
>>> fib6_rule_match is not available as a builtin.  I think that's why ld is
>>> complaining about the undefined reference.
>>
>> Same here FWIW. CONFIG_IPV6=m.
> 
> Oh I see,
> I tried this and it seems to work fine for me, does this also fix your
> problem? if so, I'll prepare the patch, and thanks for helping!
> diff --git a/net/core/fib_rules.c b/net/core/fib_rules.c
> index 51678a528f85..40dfd1f55899 100644
> --- a/net/core/fib_rules.c
> +++ b/net/core/fib_rules.c
> @@ -16,7 +16,7 @@
>  #include <net/ip_tunnels.h>
>  #include <linux/indirect_call_wrapper.h>
> 
> -#ifdef CONFIG_IPV6_MULTIPLE_TABLES
> +#if defined(CONFIG_IPV6_MULTIPLE_TABLES) && defined(CONFIG_IPV6)

Yes, that works for me.
You can add this to your patch:

Acked-by: Randy Dunlap <[email-masked]> # build-tested

thanks.
-- 
~Randy