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).