Issue: Kernel does not compile if IPV6 support is disabled
Steps to recreate: Install the 7.9 sys release source code on an
octeon system.
Edit /usr/src/sys/conf/GENERIC and comment out "option INET6"
Configure and compile as normal - will fail with the following error:
cc -g -Werror -Wall -Wimplicit-function-declaration
-Wno-pointer-sign -Wframe-larger-than=2047
-Wno-address-of-packed-member -Wno-constant-conversion
-Wno-unused-but-set-variable -Wno-gnu-folding-constant -march=mips64r2
-mno-abicalls -msoft-float -G 0 -ffreestanding -fomit-frame-pointer
-O2 -pipe -nostdinc -I/usr/sys
-I/usr/sys/arch/octeon/compile/EDGE.MP/obj -I/usr/sys/arch
-DDIAGNOSTIC -DKTRACE -DACCOUNTING -DKMEMSTATS -DPTRACE -DPOOL_DEBUG
-DCRYPTO -DSYSVMSG -DSYSVSEM -DSYSVSHM -DUVM_SWAP_ENCRYPT -DFFS -DFFS2
-DUFS_DIRHASH -DQUOTA -DEXT2FS -DMFS -DNFSCLIENT -DNFSSERVER -DCD9660
-DUDF -DMSDOSFS -DFIFO -DTMPFS -DFUSE -DSOCKET_SPLICE -DTCP_ECN
-DTCP_SIGNATURE -DIPSEC -DPPP_BSDCOMP -DPPP_DEFLATE -DPIPEX -DMROUTING
-DMPLS -DBOOT_CONFIG -DCPU_MIPS64R2 -DCPU_OCTEON -DFPUEMUL
-DMIPS_PTE64 -DPCIVERBOSE -DUSER_PCICONF -DUSBVERBOSE -DONEWIREVERBOSE
-DMULTIPROCESSOR -DMAXUSERS=32 -D_KERNEL -D__octeon__ -MD -MP -c
/usr/sys/arch/octeon/dev/if_ogx.c
/usr/sys/arch/octeon/dev/if_ogx.c:1282:22: error: invalid application
of 'sizeof' to an incomplete type 'struct ip6_hdr'
1282 | hdr |= (ehdrlen + sizeof(struct
ip6_hdr)) <<
| ^ ~~~~~~~~~~~~~~~~
/usr/sys/netinet/if_ether.h:306:9: note: forward declaration of
'struct ip6_hdr'
306 | struct ip6_hdr *ip6;
| ^
1 error generated.
*** Error 1 in /usr/sys/arch/octeon/compile/EDGE.MP (Makefile:627
'if_ogx.o')
root@defender /usr/sys/arch/octeon/compile/EDGE.MP>
Sincerely,
Gabriel