Cristan Szmajda wrote:
> Dear freebsd-current,
> Any suggestions you have regarding this problem would be
> much appreciated.
> My laptop running -CURRENT is suddenly generating bad TCP
> checksums when talking to some IPs but not others.  For
> example, is a problem,

What do you mean "suddenly"?  If you downgrade, but have all
the IP addresses and payloads exactly the same, you don't get
the problem?

The NAT code is known to use the RFC 1141 rather than RFC 1624
incremental checksum update method, which can result in checksum
errors like those you are seeing, as a result of carry underflow
screwing up the calculation (the calculation should accumulate
the old and new checksum values in different registers, and then
combine them only after dealing with carry to get them into 16
bits).  I've commented on this before, with patched calculation
code.  If the problem happens on both the old and the new FreeBSD
code, then it's probably that you are going through a NAT.

If it happens only on the newer code, then it's something
that's changed, and you can use CVS to binary search for the
change that caused the problem (8 kernels will find any kernel
in the last 8.5 months where a breaking change occurred, if you
use a binary search).  If it's just the compiler change alone,
then it's a deeper problem.

It's not like the WaveLAN driver supports checksum offloading,
which is the problem du jour for the BCG570x...

-- Terry

To Unsubscribe: send mail to [EMAIL PROTECTED]
with "unsubscribe freebsd-current" in the body of the message

Reply via email to