Subject: Re: RTL8169 hw IP4CSUM_Tx workaround
To: None <tech-kern@NetBSD.org, tech-net@NetBSD.org>
From: Izumi Tsutsui <tsutsui@ceres.dti.ne.jp>
List: tech-net
Date: 11/07/2006 22:57:17
I wrote:

> then the threshold seems 26 bytes.

Umm, on further observation, at least 28 byte IP packet
(i.e. its m_pkthdr.len == 42) of NFS UDP also causes
IP checksum corruption:
---
21:59:19.057639 00:0a:79:69:e8:45 > 00:01:03:ce:74:48, \
ethertype IPv4 (0x0800), length 1514: \
IP (tos 0x0, ttl  64, id 65214, offset 0, flags [+], \
length: 1500) 192.168.20.2.138250246 > 192.168.20.17.nfs: 1472 write [|nfs]
21:59:19.057749 00:0a:79:69:e8:45 > 00:01:03:ce:74:48, \
ethertype IPv4 (0x0800), length 1514: \
IP (tos 0x0, ttl  64, id 65214, offset 1480, flags [+], \
length: 1500) 192.168.20.2 > 192.168.20.17: udp
21:59:19.057808 00:0a:79:69:e8:45 > 00:01:03:ce:74:48, \
ethertype IPv4 (0x0800), length 60: \
IP (tos 0x0, ttl  64, id 65214, offset 2960, flags [none], \
length: 28, bad cksum 7811 (->d13c)!) 192.168.20.2 > 192.168.20.17: udp
---

I'll try to investigate what is an actual threshold.
---
Izumi Tsutsui