On 2024/10/28 18:41, Anthony J. Bentley wrote:
> Stuart Henderson writes:
> > We do support TSO on some em(4). Though, while I am not certain, I don't
> > think we do on I219-V... Anthony, do you still have that machine available?
> > Can you do an "ifconfig em hwfeatures" please so we can be sure?
> 
> $ ifconfig em0 hwfeatures
> em0: flags=808843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST,AUTOCONF4> mtu 1500
>         hwfeatures=36<CSUM_TCPv4,CSUM_UDPv4,VLAN_MTU,VLAN_HWTAGGING> hardmtu 
> 9216
>         lladdr 94:c6:91:a3:6d:8a
>         index 2 priority 0 llprio 3
>         groups: egress
>         media: Ethernet autoselect (1000baseT full-duplex)
>         status: active
>         inet 10.0.0.15 netmask 0xffffff00 broadcast 10.0.0.255

Thanks. So, as expected, no TSO here.

So to summarize what is clear from the recent findings:

- em(4) is doing something that trips problems
- either the path from LRO->TSO, or something with LRO itself,
is doing something that trips problems

and (mentioned elsewhere but including it for tech@ readers) -
mbuf handling in wg(4) is broken.

So on some systems disabling tcplro on interfaces ("ifconfig
vio0 -tcplro", "ifconfig ix0 -tcplro" etc) may help work around
the problem. On others (like the em case) that won't help.

With the em case with no TSO, possibly running wg(4) in a VM and
disabling tcplro on vio in the guest may help sidestep the wg(4)
problems. (And if it's not that, net.inet.tcp.tso=0 might be worth
a try).

Reply via email to