Overview: Kernel 2.6.18-gentoo-r1 fails to compile module xt_physdev.c Actual results: [...] GEN .version CHK include/linux/compile.h UPD include/linux/compile.h CC init/version.o LD init/built-in.o LD .tmp_vmlinux1 net/built-in.o: In function `checkentry': xt_physdev.c:(.text+0x1fba5): undefined reference to `brnf_deferred_hooks' xt_physdev.c:(.text+0x1fbcf): undefined reference to `brnf_deferred_hooks' make: *** [.tmp_vmlinux1] Error 1 Additional info: xt_physdev.c is apparently the implementation of CONFIG_NETFILTER_XT_MATCH_PHYSDEV ("physdev" match support) which was enabled in the kernel config. xt_physdev.c includes <linux/netfilter_bridge.h> and in netfilter_bridge.h the declaration "extern int brnf_deferred_hooks;" is a conditional of CONFIG_BRIDGE_NETFILTER (Bridged IP/ARP packets filtering) but this was also enabled in the kernel config. Disabling CONFIG_NETFILTER_XT_MATCH_PHYSDEV makes the kernel compile.
Please attach your .config
Created attachment 100896 [details] kernel .config file
I experience the same problem as Rumi reported, with the same workaround (disabeling "physdev" match support), but using gentoo-sources-2.6.18-r2 which has been declared stable yesterday.
Created attachment 101679 [details] kernel .config for 2.6.18-gentoo-r2
Confirm the same problem with gentoo-sources-2.6.18-r2. Im trying to recompile with CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m Results will follow!
You need to enable CONFIG_BRIDGE_NETFILTER. This will be fixed in the next release.
Fixed in gentoo-sources-2.6.18-r3 (genpatches-2.6.18-4)