Current with RSS and EPAIR and without INET6.
- Reply: Zhenlei Huang : "Re: Current with RSS and EPAIR and without INET6."
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sun, 27 Feb 2022 12:59:47 UTC
Hi Everyone, While testing RSS and EPAIR I have find out that it is required to have kernel compiled with INET6 when enabling RSS+EPAIR. I usually remove everything that i do not use from the kernel, like SCTP and INET6, etc. After compiling with "option RSS" i noticed that iocage failed to start, checking the dmesg buffer clearly showed why. [321] link_elf_obj: symbol rss_soft_m2cpuid_v6 undefined [321] linker_load_file: /boot/kernel/if_epair.ko - unsupported file type I added two ifdef INET6 on the if_epair and solve the issue, still not sure if completely correct. Best regards. Santi diff --git a/sys/net/if_epair.c b/sys/net/if_epair.c index 629de981d5b0..235e5098ebd8 100644 --- a/sys/net/if_epair.c +++ b/sys/net/if_epair.c @@ -74,6 +74,8 @@__FBSDID("$FreeBSD$"); #ifdef RSS #include <net/rss_config.h> #include <netinet/in_rss.h> +#endif +#ifdef INET6 #include <netinet6/in6_rss.h> #endif #include <net/vnet.h> @@ -220,9 +222,11 @@epair_menq(struct mbuf *m, struct epair_softc *osc) case ETHERTYPE_IP: rss_soft_m2cpuid_v4(m, 0, &bucket); break; +#ifdef INET6 case ETHERTYPE_IPV6: rss_soft_m2cpuid_v6(m, 0, &bucket); break; +#endif default: bucket = 0; break;