Re-introduce TSO support after we've implemented fixes for the two reported
authormglocker <mglocker@openbsd.org>
Fri, 16 Feb 2024 22:30:54 +0000 (22:30 +0000)
committermglocker <mglocker@openbsd.org>
Fri, 16 Feb 2024 22:30:54 +0000 (22:30 +0000)
commit6c24eb55e021991196003dc7f0a643e806b14295
tree7aac689826f7b6650b1a8d1b6c3a0904eba42f01
parent6ff3284959af1f6dd45be7c0ead966b4cc4cffd8
Re-introduce TSO support after we've implemented fixes for the two reported
issues:

1. Unaligned memory access panic on sparc64 -> Made ether_extract_headers()
   memory alignment safe.
2. em(4) watchdog timeouts in conjunction with ix(4)/vlan(4) -> Fixed
   RX/LRO packet size calculation used for TSO tagging in ix(4).

Extensive testing done by bluhm@ on amd64 and sparc64 based on different
chips.
Testing done on Hrvoje Popovskis ix(4)/em(4)/vlan(4) setup from where the
issue 2 was reported.

OK bluhm@
sys/dev/pci/if_em.c
sys/dev/pci/if_em.h
sys/dev/pci/if_em_hw.h