On Tue, Jul 25, 2023 at 07:38:29PM -0700, Kevin Bowling wrote:
> Hi,
> 
> I have been working through various bugs and have come to a point
> where TSO is working on systems I have available for testing.
> 
> This results in higher throughput on resource constrained systems, and
> less CPU/power usage on unconstrained systems.
> 
> As of this mail, you will need to manually apply
> https://reviews.freebsd.org/D41170 on top of main to use TSO6 on
> em(4).
> 
> I plan to enable TSO by default for lem(4) and em(4) during the
> FreeBSD 14 release cycle, so I would appreciate testing to address any
> remaining issues.  Below, a list of chipsets that will be exempt due
> to known issues.
> 
> lem(4) exclusions:
> * <82544 (although it does seem ok to manually enable for emulations
> in qemu, virtualbox, etc)
> * 82547
> 
> em(4) exclusions.. These chips have a stability workaround for high
> throughput with rapid link-flap applied that results in the TSO engine
> not being able to run at line speed.  Thus, TSO would not be enabled
> by default here:
> * Intel(R) I219-LM and I219-V
> * Intel(R) I219-LM and I219-V (2)
> * Intel(R) I219-LM and I219-V (3)
> * Intel(R) I219-LM and I219-V (4)
> * Intel(R) I219-LM and I219-V (5)

In the past, at least for 82579 TSO4 didn't work at all, causing
MAC hangs. For devices like 82573E in turn TSO4 only worked at
GbE speed. Thus, b1b6afa587761c5d56b0a5410a2a8ea9c2248a57 would
automatically disable TSO4 based on actual link speed if needed
but that code was lost with the conversion to iflib(9). Thus,
given the amount of chips supported, uncertainty whether all
required workarounds are actually in place, oddities such as lower
link speeds causing problems for TSO, the general mediocre benefit
of TSO at GbE and below and the fact that you only have tested TSO
with a limited amount of real hardware accroding to D41170, I
still don't think it's a good idea to enable TSO by default for
EM- and LEM-class gear, especially _not_ during a release cycle.
At most, TSO should be whitelisted for specific, thoroughly tested
PCI IDs but not the entire classes.

Marius


Reply via email to