Date: Sun, 27 Feb 2022 13:59:47 +0100 From: Santiago Martinez <sm@codenetworks.net> To: "freebsd-net@freebsd.org" <freebsd-net@freebsd.org> Subject: Current with RSS and EPAIR and without INET6. Message-ID: <5a7afbfc-586e-710d-f3af-c3ab92f1ae4e@codenetworks.net>
next in thread | raw e-mail | index | archive | help
This is a multi-part message in MIME format. --------------4oN4QkJ1n9U9on4tya5UZ63n Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit 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; --------------4oN4QkJ1n9U9on4tya5UZ63n Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: 8bit <html> <head> <meta http-equiv="content-type" content="text/html; charset=UTF-8"> </head> <body> <p>Hi Everyone, <br> </p> <p>While testing RSS and EPAIR I have find out that it is required to have kernel compiled with INET6 when enabling RSS+EPAIR.<br> </p> <p>I usually remove everything that i do not use from the kernel, like SCTP and INET6, etc. <br> </p> <p>After compiling with "option RSS" i noticed that iocage failed to start, checking the dmesg buffer clearly showed why.<br> </p> <p><span style="font-family:monospace"><span style="color:#000000;background-color:#ffffff;">[321] link_elf_obj: symbol rss_soft_m2cpuid_v6 undefined </span><br> [321] linker_load_file: /boot/kernel/if_epair.ko - unsupported file type<br> </span></p> <p><span style="font-family:monospace"></span>I added two ifdef INET6 on the if_epair and solve the issue, still not sure if completely correct.<br> </p> <p>Best regards.</p> <p>Santi</p> <p><span style="font-family:monospace"><span style="font-weight:bold;color:#000000;background-color:#ffffff;">diff --git a/sys/net/if_epair.c b/sys/net/if_epair.c</span><span style="color:#000000;background-color:#ffffff;"> </span><br> <span style="font-weight:bold;color:#000000;background-color:#ffffff;">index 629de981d5b0..235e5098ebd8 100644</span><span style="color:#000000;background-color:#ffffff;"> </span><br> <span style="font-weight:bold;color:#000000;background-color:#ffffff;">--- a/sys/net/if_epair.c</span><span style="color:#000000;background-color:#ffffff;"> </span><br> <span style="font-weight:bold;color:#000000;background-color:#ffffff;">+++ b/sys/net/if_epair.c</span><span style="color:#000000;background-color:#ffffff;"> </span><br> <span style="color:#18b2b2;background-color:#ffffff;">@@ -74,6 +74,8 @@</span><span style="color:#000000;background-color:#ffffff;"> __FBSDID("$FreeBSD$"); </span><br> #ifdef RSS <br> #include <net/rss_config.h> <br> #include <netinet/in_rss.h> <br> <span style="color:#18b218;background-color:#ffffff;">+#endif</span><span style="color:#000000;background-color:#ffffff;"> </span><br> <span style="color:#18b218;background-color:#ffffff;">+#ifdef INET6</span><span style="color:#000000;background-color:#ffffff;"> </span><br> #include <netinet6/in6_rss.h> <br> #endif <br> #include <net/vnet.h> <br> <span style="color:#18b2b2;background-color:#ffffff;">@@ -220,9 +222,11 @@</span><span style="color:#000000;background-color:#ffffff;"> epair_menq(struct mbuf *m, struct epair_softc *osc) </span><br> case ETHERTYPE_IP: <br> rss_soft_m2cpuid_v4(m, 0, &bucket); <br> break; <br> <span style="color:#18b218;background-color:#ffffff;">+#ifdef INET6</span><span style="color:#000000;background-color:#ffffff;"> </span><br> case ETHERTYPE_IPV6: <br> rss_soft_m2cpuid_v6(m, 0, &bucket); <br> break; <br> <span style="color:#18b218;background-color:#ffffff;">+#endif</span><span style="color:#000000;background-color:#ffffff;"> </span><br> default: <br> bucket = 0; <br> break;<br> </span></p> <p><span style="font-family:monospace"></span><br> <span style="font-family:monospace"></span></p> <p><br> </p> <p><br> </p> <span style="font-family:monospace"></span> <p><br> <span style="font-family:monospace"></span></p> </body> </html> --------------4oN4QkJ1n9U9on4tya5UZ63n--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?5a7afbfc-586e-710d-f3af-c3ab92f1ae4e>