In D53674#1225349, @mjg wrote:these also need to go:
sys/net/iflib.c:#define IFC_PREFETCH 0x040 sys/net/iflib.c: if (rxq->ifr_ctx->ifc_flags & IFC_PREFETCH) sys/net/iflib.c: do_prefetch = (ctx->ifc_flags & IFC_PREFETCH); sys/net/iflib.c: ctx->ifc_flags |= IFC_PREFETCH;
- Feed Queries
- All Stories
- Search
- Feed Search
- Transactions
- Transaction Logs
Feed Search
Nov 11 2025
Nov 11 2025
Nov 10 2025
Nov 10 2025
In D53674#1225304, @mjg wrote:This looks legitimate.
The kernel does not have infra for static branches, so a tunable would not look good anyway. However, instead of just removing it I would propose just ifdefing the code for the time being, maybe start the file with:
/* * Uncomment to enable prefetching. Measurements in https://reviews.freebsd.org/D53674 show it hurts performance. */ //#define IFLIB_PREFETCHThen interested parties can experiment should the choose to.
If mere existence of this code is making other work harder, then by all means remove it.
Nov 6 2025
Nov 6 2025
Nov 5 2025
Nov 5 2025
- tried to address kib's concerns
Nov 4 2025
Nov 4 2025
- added comment regarding allocation failure behavior, as suggested by markj
Oct 31 2025
Oct 31 2025
Is there any concern that this new use will add pressure to the sf_buf system on non-direct map platforms?
Oct 30 2025
Oct 30 2025
gallatin updated the diff for D53089: rss: Enable portions of RSS globally to enable symmetric hashing.
- Made rss_config.c standard. This is needed because most
drivers do not check to see if INET/INET6 is enabled before
setting up RSS. This fixes compilation errors in most
drivers with LINT-NOIP
Oct 27 2025
Oct 27 2025
Oct 20 2025
Oct 20 2025
In D53176#1214928, @mjg wrote:Do you have stats how many classes can be realistically present? maybe this would be way faster single-threaded by iterating an array?
Oct 17 2025
Oct 17 2025
gallatin added a comment to D53100: ena: use newly exposed RSS hash key API rather than ad-hoc hashing.
In D53100#1214833, @akiyano_amazon.com wrote:I built and installed the latest kernel with this patchset in AWS and ran a network sanity check with iperf and all looks good.
turned on net.inet.tcp.input_verify_hash with sysctl net.inet.tcp.input_verify_hash=1
ran traffic
lookede at
sysctl net.inet.tcp.input_nohash
sysctl net.inet.tcp.input_badhashand both were 0
no prints to dmesg
commit lgtm.
gallatin added a comment to D53101: lio: use newly exposed RSS hash key API rather than ad-hoc hashing.
In D53101#1214513, @zlei wrote:In D53101#1214510, @zlei wrote:I'm not getting this change. The kernel build option RSS is not enabled by default. Is this change want to enable a variant RSS when RSS is not enabled in the kernel ?
Ahh, I missed D53089 .
gallatin added a comment to D53091: mlx5: use newly exposed RSS hash key API rather than ad-hoc hashing.
In D53091#1214239, @kib wrote:In D53091#1213715, @gallatin wrote:In D53091#1213605, @kib wrote:Sorry, I do not understand the change.
The compilation of both in_rss.c and rss_config.c is gated by the RSS option, and this seems to not change for the whole time these files existed.In other words, if the 'options RSS' is not included into the kernel config, would the driver even compile?
Sorry, I wish I was better at reviews of patch series. This is one of many patches, starting with https://reviews.freebsd.org/D53089 and ending with https://reviews.freebsd.org/D53104
The goal is to achieve consistent hashing for TCP ingress/egress by exposing the hashing parts of RSS to drivers, so that all NICs use the same hash key and algo.I do not know how to list of the patches in your series. You could add 'related objects' to your review, then it will be visible to everybody.
That said, I have no objections against this change after D53089 goes in.
We (Nvidia) might request that the commit of this revision might be postponed until D53089 is committed, so that Nvidia' verification could do the scrutiny before driver changes.
Or you might provide us the minimal set of reviews we could apply and run verification on, to ensure that your commit is fine for mlx5.
Oct 16 2025
Oct 16 2025
gallatin updated the diff for D53100: ena: use newly exposed RSS hash key API rather than ad-hoc hashing.
Update patch to unifdef check for adapter using toeplitz hashing
gallatin added a comment to D53100: ena: use newly exposed RSS hash key API rather than ad-hoc hashing.
In D53100#1213606, @akiyano_amazon.com wrote:Hi,
Thank you for submitting this patch.
Can you please provide a commit message that explains this change.
For example questions that immediately arise:
- What "newly exposed RSS hash key API" you are talking about (link to the commits that added this API)?
- Why it is ok to remove the #ifdef RSS?
- Why do you also remove the #ifdef RSS in ena_datapath.c?
- How did you test the change?
Thanks!
gallatin added a comment to D53091: mlx5: use newly exposed RSS hash key API rather than ad-hoc hashing.
In D53091#1213605, @kib wrote:Sorry, I do not understand the change.
The compilation of both in_rss.c and rss_config.c is gated by the RSS option, and this seems to not change for the whole time these files existed.In other words, if the 'options RSS' is not included into the kernel config, would the driver even compile?
Oct 15 2025
Oct 15 2025
gallatin added reviewers for D53104: tcp: Enable symmetric hashing by setting hash on outgoing conns: adrian, zlei.
gallatin added a reviewer for D53089: rss: Enable portions of RSS globally to enable symmetric hashing: zlei.
gallatin added reviewers for D53103: igc: use newly exposed RSS hash key API rather than ad-hoc hashing: markj, erj.
gallatin added reviewers for D53102: sfxge: use newly exposed RSS hash key API rather than ad-hoc hashing: zlei, arybchik.
gallatin added a reviewer for D53101: lio: use newly exposed RSS hash key API rather than ad-hoc hashing: zlei.
gallatin added reviewers for D53099: hn: use newly exposed RSS hash key API rather than ad-hoc hashing: whu, sepherosa_gmail.com, mp.
gallatin added reviewers for D53098: vmxnet3: use newly exposed RSS hash key API rather than ad-hoc hashing: vangyzen, kp, tuexen.
gallatin added reviewers for D53092: cxgbe: use newly exposed RSS hash key API rather than ad-hoc hashing: np, jhb.
gallatin added reviewers for D53091: mlx5: use newly exposed RSS hash key API rather than ad-hoc hashing: kib, vangyzen.
In D53088#1213086, @tuexen wrote:
Oct 14 2025
Oct 14 2025
gallatin added reviewers for D53089: rss: Enable portions of RSS globally to enable symmetric hashing: adrian, np, jhb.
gallatin requested review of D53104: tcp: Enable symmetric hashing by setting hash on outgoing conns.
gallatin requested review of D53103: igc: use newly exposed RSS hash key API rather than ad-hoc hashing.
gallatin requested review of D53102: sfxge: use newly exposed RSS hash key API rather than ad-hoc hashing.
gallatin requested review of D53101: lio: use newly exposed RSS hash key API rather than ad-hoc hashing.
gallatin requested review of D53100: ena: use newly exposed RSS hash key API rather than ad-hoc hashing.
gallatin requested review of D53099: hn: use newly exposed RSS hash key API rather than ad-hoc hashing.
gallatin requested review of D53097: e1000: use newly exposed RSS hash key API rather than ad-hoc hashing.
gallatin requested review of D53098: vmxnet3: use newly exposed RSS hash key API rather than ad-hoc hashing.
gallatin requested review of D53096: ice: use newly exposed RSS hash key API rather than ad-hoc hashing.
gallatin requested review of D53095: iavf: use newly exposed RSS hash key API rather than ad-hoc hashing.
gallatin requested review of D53094: ixl: use newly exposed RSS hash key API rather than ad-hoc hashing.
gallatin requested review of D53093: ixgbe: Use newly exposed RSS hash API rather than ad-hoc hashing.
gallatin requested review of D53092: cxgbe: use newly exposed RSS hash key API rather than ad-hoc hashing.
gallatin requested review of D53091: mlx5: use newly exposed RSS hash key API rather than ad-hoc hashing.
gallatin requested review of D53089: rss: Enable portions of RSS globally to enable symmetric hashing.
Oct 9 2025
Oct 9 2025
Also, this needs to be MFC'ed to 15 for the release..
To be clear, igc worked fine when configured with multiple queues. I had configured it with a single rx queue in order to debug something else, and it took the somewhat reasonable approach of returning garbage as the hash since it didn't need to hash packets to multiple queues. Thank you for coming up with this... it is much cleaner than my solution, and should ensure that any other non-iflib drivers avoid this behavior as well.
Oct 7 2025
Oct 7 2025
Oct 1 2025
Oct 1 2025
Sep 24 2025
Sep 24 2025
Update patch to address @markj 's feedback, and to properly fix the bug I encountered where doorbells were withheld when using the mp_ring transmit method.
Sep 22 2025
Sep 22 2025
@markj I've marked things as done as I've done them in my local tree. I'll update the patch once I do some more research into the doorbell issue. thank you for the reveiw!
Sep 18 2025
Sep 18 2025
gallatin requested changes to D52088: bnxt_en: Fix Rx CQ consumer index on Thor2 to prevent interrupt storm.
gallatin added inline comments to D52085: bnxt_en: Periodically synchronize host time with firmware.
Sep 16 2025
Sep 16 2025
Sep 15 2025
Sep 15 2025
Sep 11 2025
Sep 11 2025
Sep 10 2025
Sep 10 2025
Sep 8 2025
Sep 8 2025
- remove extra space in iflib_if_get_counter as pointed out by @kbowling
In D52369#1197238, @markj wrote:Instead of making each driver report 0 if it doesn't collect a drop counter from the MAC, and treating these counters as a special case in iflib_if_get_counter(), wouldn't it be simpler and cleaner to make them all drivers return the value from if_get_counter_default()?
reversed logic and made the driver responsible to query the generic counters for odrop/oerr rather than iflib.
Sep 5 2025
Sep 5 2025
Updated drivers that were getting generic counters using if_get_counter_default() as part of their ifdi_get_counter method to avoid getting generic counters for output drops and output errors, as suggested by @markj .
Sep 4 2025
Sep 4 2025
- Call iflib_remove_mbuf() to unmap and remove the mbuf from list of mbufs to be freed when we free an mbuf due to ENOBUFS
Sep 3 2025
Sep 3 2025
Aug 20 2025
Aug 20 2025
Aug 14 2025
Aug 14 2025
Aug 12 2025
Aug 12 2025
In D51772#1185535, @markj wrote:removing forwarding checks ... LRO already does this
But LRO only checks the forwarding configuration when it actually comes time to process packets. With this patch, if forwarding is enabled, we'll do a bunch of needless sorting.
Aug 9 2025
Aug 9 2025
Aug 7 2025
Aug 7 2025
Aug 6 2025
Aug 6 2025
Aug 5 2025
Aug 5 2025
Address Eric's style(9) nits and remove space in front of parans in sizeof