Re: build world fails on raw_ip.c

From: Hans Petter Selasky <hps_at_selasky.org>
Date: Tue, 04 Oct 2022 13:45:41 UTC
On 10/4/22 15:35, Gary Jennejohn wrote:
> On Tue, 4 Oct 2022 15:20:05 +0200
> Hans Petter Selasky <hps@selasky.org> wrote:
> 
>> On 10/4/22 15:14, Johan Hendriks wrote:
>>> I just updated the source today but now i get an error building world.
>>> The old build was from yesterday which was fine!
>>>
>>> Building /usr/obj/usr/src/amd64.amd64/sys/KRNL/raw_ip.o
>>> cc -target x86_64-unknown-freebsd14.0 > --sysroot=/usr/obj/usr/src/amd64.amd64/tmp > -B/usr/obj/usr/src/amd64.amd64/tmp/usr/bin -c -O2 -pipe > -fno-strict-aliasing -march=broadwell -g -nostdinc  -I. -I/usr/src/sys > -I/usr/src/sys/contrib/ck/include -I/usr/src/sys/contrib/libfdt > -D_KERNEL -DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h -fno-common > -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer > -fdebug-prefix-map=./machine=/usr/src/sys/amd64/include > -fdebug-prefix-map=./x86=/usr/src/sys/x86/include > -fdebug-prefix-map=./i386=/usr/src/sys/i386/include -mcmodel=kernel > -mno-red-zone -mno-mmx -mno-sse -msoft-float > -fno-asynchronous-unwind-tables -ffreestanding -fwrapv -fstack-protector > -Wall -Wnested-externs -Wstrict-prototypes -Wmissing-prototypes > -Wpointer-arith -Wcast-qual -Wundef -Wno-pointer-sign > -D__printf__=__freebsd_kprintf__ -Wmissing-include-dirs > -fdiagnostics-show-option -Wno-unknown-pragmas > -Wno-error=tautological-compare -Wno-error=empty-body > -Wno-error=parentheses-equality -Wno-error=unused-function > -Wno-error=pointer-sign -Wno-error=shift-negative-value > -Wno-address-of-packed-member -Wno-format-zero-length   -mno-aes > -mno-avx  -std=iso9899:1999 -Werror /usr/src/sys/netinet/raw_ip.c
>>> /usr/src/sys/netinet/raw_ip.c:811:3: error: too few arguments to > function call, expected 4, have 2
>>>                   IPSEC_CTLINPUT(ipv4, icmp);
>>>                   ^~~~~~~~~~~~~~~~~~~~~~~~~~
>>> /usr/src/sys/netipsec/ipsec_support.h:222:61: note: expanded from macro > 'IPSEC_CTLINPUT'
>>>       ipsec_kmod_ctlinput(proto ## _ipsec_support, __VA_ARGS__)
>>>       ~~~~~~~~~~~~~~~~~~~                                     ^
>>> /usr/src/sys/netipsec/ipsec_support.h:196:5: note: 'ipsec_kmod_ctlinput' > declared here
>>> int ipsec_kmod_ctlinput(struct ipsec_support * const, int,
>>>       ^
>>> 1 error generated.
>>> *** Error code 1
>>>
>>
>> I've mailed the responsible committer.
>>
>> Just do:
>>
>> diff --git a/sys/amd64/conf/GENERIC b/sys/amd64/conf/GENERIC
>> index 9178abba36cc..ed8045e48257 100644
>> --- a/sys/amd64/conf/GENERIC
>> +++ b/sys/amd64/conf/GENERIC
>> @@ -30,7 +30,7 @@ options       PREEMPTION              # Enable kernel thread preemption
>>    options        VIMAGE                  # Subsystem virtualization, e.g. VNET
>>    options        INET                    # InterNETworking
>>    options        INET6                   # IPv6 communications protocols
>> -options        IPSEC_SUPPORT           # Allow kldload of ipsec and tcpmd5
>> +# options      IPSEC_SUPPORT           # Allow kldload of ipsec and tcpmd5
>>    options                ROUTE_MPATH             # Multipath routing support
>>    options                FIB_ALGO                # Modular fib lookups
>>    options        TCP_OFFLOAD             # TCP offload
>>
>>
>>
>> For now.
>>
> 
> There are the usual other problems, like always assuming the every user
> has INET6 defined in their kernel config file.
> 
> Here's an error I just saw:
> 
> /usr/src/sys/netinet/tcp_subr.c:136:8: error: unknown type name 'ip6proto_ctlinput_t'; did you mean 'ipproto_ctlinput_t'?
> static ip6proto_ctlinput_t tcp6_ctlinput;
>         ^~~~~~~~~~~~~~~~~~~
>         ipproto_ctlinput_t
> /usr/src/sys/netinet/ip_var.h:242:14: note: 'ipproto_ctlinput_t' declared here
> typedef void    ipproto_ctlinput_t(struct icmp *);
>                  ^
> 1 error generated.
> --- tcp_subr.o ---
> *** [tcp_subr.o] Error code 1
> 
> --
> Gary Jennejohn

I think this should fix it for now. Will let Gleb review when he's back 
in the office again.

https://cgit.freebsd.org/src/commit/?id=9f69c0b87da3faa02abcedb69689b1ab1edf571a

--HPS