When compiling Gentoo-sources 2.4.20-r7, during "make bzImage", the output ends with: --------------------------------------------------------- gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-gentoo-r7/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=athlon-mp -nostdinc -iwithprefix include -DKBUILD_BASENAME=ipt_unclean -c -o ipt_unclean.o ipt_unclean.c gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-gentoo-r7/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=athlon-mp -nostdinc -iwithprefix include -DKBUILD_BASENAME=ipt_string -c -o ipt_string.o ipt_string.c ipt_string.c: In function `search_sublinear': ipt_string.c:53: warning: subscript has type `char' ipt_string.c:78: warning: subscript has type `char' gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-gentoo-r7/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=athlon-mp -nostdinc -iwithprefix include -DKBUILD_BASENAME=ipt_tcpmss -c -o ipt_tcpmss.o ipt_tcpmss.c gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-gentoo-r7/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=athlon-mp -nostdinc -iwithprefix include -DKBUILD_BASENAME=ipt_stealth -c -o ipt_stealth.o ipt_stealth.c gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-gentoo-r7/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=athlon-mp -nostdinc -iwithprefix include -DKBUILD_BASENAME=ipt_realm -c -o ipt_realm.o ipt_realm.c ipt_realm.c: In function `match': ipt_realm.c:29: structure has no member named `tclassid' make[3]: *** [ipt_realm.o] Error 1 make[3]: Leaving directory `/usr/src/linux-2.4.20-gentoo-r7/net/ipv4/netfilter' make[2]: *** [first_rule] Error 2 make[2]: Leaving directory `/usr/src/linux-2.4.20-gentoo-r7/net/ipv4/netfilter' make[1]: *** [_subdir_ipv4/netfilter] Error 2 make[1]: Leaving directory `/usr/src/linux-2.4.20-gentoo-r7/net' make: *** [_dir_net] Error 2 cwithprefix include -DKBUILD_BASENAME=ipt_string -c -o ipt_string.o ipt_string. ipt_string.c: In function `search_sublinear': gcc: ipt_string.c: No such file or directory gcc: no input files --------------------------------------------------- The system itself is stable and can compile all day. This error appears in the same place every time. I will post more info if I find anything worth noting. Reproducible: Always Steps to Reproduce: 1. Configure a Gentoo-sources kernel, probably one with all of the non-experimental IPfilter options 2. Compile it. 3. Profit!!! Actual Results: GCC error as above, no kernel Expected Results: Popped a kernel out. The kernel config (minus commented stuff) is as follows: CONFIG_X86=y CONFIG_UID16=y CONFIG_EXPERIMENTAL=y CONFIG_LOLAT=y CONFIG_MMP31=y CONFIG_X86_WP_WORKS_OK=y CONFIG_X86_INVLPG=y CONFIG_X86_CMPXCHG=y CONFIG_X86_XADD=y CONFIG_X86_BSWAP=y CONFIG_X86_POPAD_OK=y CONFIG_RWSEM_XCHGADD_ALGORITHM=y CONFIG_X86_L1_CACHE_SHIFT=6 CONFIG_X86_HAS_TSC=y CONFIG_X86_GOOD_APIC=y CONFIG_X86_USE_3DNOW=y CONFIG_X86_PGE=y CONFIG_X86_USE_PPRO_CHECKSUM=y CONFIG_X86_MCE=y CONFIG_X86_MSR=y CONFIG_X86_CPUID=y CONFIG_NOHIGHMEM=y CONFIG_1GB=y CONFIG_MTRR=y CONFIG_SMP=y CONFIG_PREEMPT=y CONFIG_X86_TSC=y CONFIG_HAVE_DEC_LOCK=y CONFIG_HZ=200 CONFIG_NET=y CONFIG_X86_IO_APIC=y CONFIG_X86_LOCAL_APIC=y CONFIG_PCI=y CONFIG_PCI_GOANY=y CONFIG_PCI_BIOS=y CONFIG_PCI_DIRECT=y CONFIG_PCI_NAMES=y CONFIG_SYSVIPC=y CONFIG_BSD_PROCESS_ACCT=y CONFIG_SYSCTL=y CONFIG_KCORE_ELF=y CONFIG_BINFMT_AOUT=y CONFIG_BINFMT_ELF=y CONFIG_BINFMT_MISC=y CONFIG_SYSTRACE=y CONFIG_PM=y CONFIG_APM=y CONFIG_APM_DO_ENABLE=y CONFIG_APM_CPU_IDLE=y CONFIG_PNP=y CONFIG_BLK_DEV_FD=y CONFIG_BLK_DEV_LOOP=y CONFIG_PACKET=y CONFIG_PACKET_MMAP=y CONFIG_NETFILTER=y CONFIG_UNIX=y CONFIG_INET=y CONFIG_IP_ADVANCED_ROUTER=y CONFIG_IP_ROUTE_TOS=y CONFIG_IP_ROUTE_VERBOSE=y CONFIG_SYN_COOKIES=y CONFIG_IP_NF_CONNTRACK=y CONFIG_IP_NF_FTP=y CONFIG_IP_NF_IRC=y CONFIG_IP_NF_MMS=y CONFIG_IP_NF_IPTABLES=y CONFIG_IP_NF_MATCH_RPC=y CONFIG_IP_NF_MATCH_LIMIT=y CONFIG_IP_NF_MATCH_QUOTA=y CONFIG_IP_NF_POOL=y CONFIG_IP_NF_MATCH_IPRANGE=y CONFIG_IP_NF_MATCH_MAC=y CONFIG_IP_NF_MATCH_PKTTYPE=y CONFIG_IP_NF_MATCH_MARK=y CONFIG_IP_NF_MATCH_MULTIPORT=y CONFIG_IP_NF_MATCH_MPORT=y CONFIG_IP_NF_MATCH_TOS=y CONFIG_IP_NF_MATCH_RECENT=y CONFIG_IP_NF_MATCH_RANDOM=y CONFIG_IP_NF_MATCH_PSD=y CONFIG_IP_NF_MATCH_NTH=y CONFIG_IP_NF_MATCH_FUZZY=y CONFIG_IP_NF_MATCH_CONDITION=y CONFIG_IP_NF_MATCH_ECN=y CONFIG_IP_NF_MATCH_DSCP=y CONFIG_IP_NF_MATCH_AH_ESP=y CONFIG_IP_NF_MATCH_LENGTH=y CONFIG_IP_NF_MATCH_TTL=y CONFIG_IP_NF_MATCH_TCPMSS=y CONFIG_IP_NF_MATCH_STEALTH=y CONFIG_IP_NF_MATCH_REALM=y CONFIG_IP_NF_MATCH_HELPER=y CONFIG_IP_NF_MATCH_STATE=y CONFIG_IP_NF_MATCH_CONNLIMIT=y CONFIG_IP_NF_MATCH_CONNTRACK=y CONFIG_IP_NF_MATCH_UNCLEAN=y CONFIG_IP_NF_MATCH_STRING=y CONFIG_IP_NF_MATCH_OWNER=y CONFIG_IP_NF_FILTER=y CONFIG_IP_NF_TARGET_REJECT=y CONFIG_IP_NF_TARGET_NETLINK=y CONFIG_IP_NF_TARGET_IPV4OPTSSTRIP=y CONFIG_IP_NF_TARGET_MIRROR=y CONFIG_IP_NF_TARGET_TARPIT=y CONFIG_IP_NF_NAT=y CONFIG_IP_NF_NAT_NEEDED=y CONFIG_IP_NF_TARGET_MASQUERADE=y CONFIG_IP_NF_TARGET_REDIRECT=y CONFIG_IP_NF_TARGET_SAME=y CONFIG_IP_NF_TARGET_NETMAP=y CONFIG_IP_NF_NAT_IRC=y CONFIG_IP_NF_NAT_MMS=y CONFIG_IP_NF_NAT_FTP=y CONFIG_IP_NF_MANGLE=y CONFIG_IP_NF_TARGET_TOS=y CONFIG_IP_NF_TARGET_ECN=y CONFIG_IP_NF_TARGET_DSCP=y CONFIG_IP_NF_TARGET_MARK=y CONFIG_IP_NF_TARGET_IMQ=y CONFIG_IP_NF_TARGET_LOG=y CONFIG_IP_NF_TARGET_ROUTE=y CONFIG_IP_NF_TARGET_TTL=y CONFIG_IP_NF_TARGET_ULOG=y CONFIG_IP_NF_TARGET_TCPMSS=y CONFIG_IDE=y CONFIG_BLK_DEV_IDE=y CONFIG_BLK_DEV_IDEDISK=y CONFIG_BLK_DEV_IDECD=y CONFIG_BLK_DEV_IDEPCI=y CONFIG_IDEPCI_SHARE_IRQ=y CONFIG_BLK_DEV_IDEDMA_PCI=y CONFIG_IDEDMA_PCI_AUTO=y CONFIG_BLK_DEV_IDEDMA=y CONFIG_BLK_DEV_ADMA=y CONFIG_BLK_DEV_AMD74XX=y CONFIG_BLK_DEV_PDC202XX=y CONFIG_IDEDMA_AUTO=y CONFIG_BLK_DEV_IDE_MODES=y CONFIG_SCSI=y CONFIG_BLK_DEV_SD=y CONFIG_SD_EXTRA_DEVS=2 CONFIG_CHR_DEV_ST=y CONFIG_BLK_DEV_SR=y CONFIG_SR_EXTRA_DEVS=2 CONFIG_SCSI_AIC7XXX=y CONFIG_AIC7XXX_CMDS_PER_DEVICE=32 CONFIG_AIC7XXX_RESET_DELAY_MS=15000 CONFIG_AIC7XXX_DEBUG_MASK=0 CONFIG_SCSI_SYM53C8XX=y CONFIG_SCSI_NCR53C8XX_DEFAULT_TAGS=4 CONFIG_SCSI_NCR53C8XX_MAX_TAGS=32 CONFIG_SCSI_NCR53C8XX_SYNC=20 CONFIG_NETDEVICES=y CONFIG_DUMMY=y CONFIG_NET_ETHERNET=y CONFIG_NET_VENDOR_3COM=y CONFIG_VORTEX=y CONFIG_NET_PCI=y CONFIG_EEPRO100=y CONFIG_E1000=y CONFIG_VT=y CONFIG_ECC=y CONFIG_VT_CONSOLE=y CONFIG_UNIX98_PTYS=y CONFIG_UNIX98_PTY_COUNT=256 CONFIG_MOUSE=y CONFIG_PSMOUSE=y CONFIG_AMD_RNG=y CONFIG_AMD_PM768=y CONFIG_REISERFS_FS=y CONFIG_EXT3_FS=y CONFIG_JBD=y CONFIG_FAT_FS=y CONFIG_MSDOS_FS=y CONFIG_VFAT_FS=y CONFIG_TMPFS=y CONFIG_RAMFS=y CONFIG_ISO9660_FS=y CONFIG_JOLIET=y CONFIG_NTFS_FS=y CONFIG_PROC_FS=y CONFIG_DEVFS_FS=y CONFIG_DEVFS_MOUNT=y CONFIG_DEVPTS_FS=y CONFIG_EXT2_FS=y CONFIG_UDF_FS=y CONFIG_UFS_FS=y CONFIG_SMB_FS=y CONFIG_FS_MBCACHE=y CONFIG_MSDOS_PARTITION=y CONFIG_SMB_NLS=y CONFIG_NLS=y CONFIG_NLS_DEFAULT="iso8859-1" CONFIG_NLS_CODEPAGE_437=y CONFIG_NLS_UTF8=y CONFIG_VGA_CONSOLE=y CONFIG_VIDEO_SELECT=y CONFIG_ZLIB_INFLATE=y CONFIG_ZLIB_DEFLATE=y CONFIG_QSORT=y
Manually add "CONFIG_NET_CLS_ROUTE=y" to your .config and see if things work. You might need to do a 'make clean dep' before doing 'make bzImage'
*** Bug 27350 has been marked as a duplicate of this bug. ***
... Is this bug still relevant?
*** Bug 31449 has been marked as a duplicate of this bug. ***
Didnt help in my case, i did: 1. inserted row to /usr/src/linux/.config CONFIG_NET_CLS_ROUTE=y 2. make clean dep 3. make bzImage -> completes successfully 4. make modules -> gcc -D__KERNEL__ -I/usr/src/linux-2.4.20-gentoo-r7/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -fomit-frame-pointer -pipe -mpreferred-stack-boundary=2 -march=athlon -DMODULE -DMODVERSIONS -include /usr/src/linux-2.4.20-gentoo-r7/include/linux/modversions.h -nostdinc -iwithprefix include -DKBUILD_BASENAME=ipt_realm -c -o ipt_realm.o ipt_realm.c ipt_realm.c: In function `match': ipt_realm.c:29: structure has no member named `tclassid' make[2]: *** [ipt_realm.o] Error 1 make[2]: Leaving directory `/usr/src/linux-2.4.20-gentoo-r7/net/ipv4/netfilter' make[1]: *** [_modsubdir_ipv4/netfilter] Error 2 make[1]: Leaving directory `/usr/src/linux-2.4.20-gentoo-r7/net' make: *** [_mod_net] Error 2
Confirmed. Resolution is to enable the following in networking options:- [ Note that if you enable these as *non-modules* you would have to recompile your kernel and install it, enabling these as modules is recommended ] Networking Options -> QoS and/or fair queuing -> Packet Classifier API -> Routing table based classifier... I'll add a #warning to the ipt_realm.c file to enforce this.
In CVS...