diff options
author | yongari <yongari@FreeBSD.org> | 2007-04-11 00:47:29 +0000 |
---|---|---|
committer | yongari <yongari@FreeBSD.org> | 2007-04-11 00:47:29 +0000 |
commit | 8a4ba838b29d91b8163878b538490e08e87765cc (patch) | |
tree | 3b8e5dfaeb583c0d387f67433bc443612930452c /sys/contrib | |
parent | 1e6e7c9b8c8234c23911142b6ecdf6cecacc8534 (diff) | |
download | FreeBSD-src-8a4ba838b29d91b8163878b538490e08e87765cc.zip FreeBSD-src-8a4ba838b29d91b8163878b538490e08e87765cc.tar.gz |
Add work around for hardware Tx checksum offload bug in Yukon II.
Yukon II generated corrupted TCP checksum for short TCP packets
that's less than 60 bytes in size(e.g. window probe packet, pure ACK
packet etc). Padding the frame with zeros to make the frame minimum
ethernet frame size didn't work at all. Instead of dropping Tx
checksum offload support we calculate TCP checksum with S/W method
when we encounter short TCP frames.
Fortunately it seems that short UDP datagrams appear to be handled
correctly by Yukon II.
While I'm here simplify ethernet/VLAN header size calculation logic.
PR: 111384
Diffstat (limited to 'sys/contrib')
0 files changed, 0 insertions, 0 deletions