kern/119635: Bad UDP packet checksum with em(4) and
rxcsum/txcsum enabled
Kris Kennaway
kris at FreeBSD.org
Sun Jan 13 19:10:06 UTC 2008
The following reply was made to PR kern/119635; it has been noted by GNATS.
From: Kris Kennaway <kris at FreeBSD.org>
To: Bernd Heller <bdheller at users.sourceforge.net>
Cc: freebsd-gnats-submit at FreeBSD.org
Subject: Re: kern/119635: Bad UDP packet checksum with em(4) and rxcsum/txcsum
enabled
Date: Sun, 13 Jan 2008 20:04:53 +0100
Bernd Heller wrote:
>> Description:
> I have an Intel Pro/1000 PT Desktop Adapter network card in that machine, and by default the em(4) driver has rxcsum/txcsum enabled.
>
> But the checksums for some UDP packets generated this way are wrong. I noticed this when trying to run avahi-daemon. It sends UDP multicast packets, but they were never recognized on the network. Only when using tcpdump did I notice the bad checksums. After I disabled rxcsum/txcsum on the interface all was working perfectly.
>
> I could reproduce the same issue in a VMware machine using FreeBSD 7.0-RC1 i386 and amd64. 6.2 seems to be unaffected.
>> How-To-Repeat:
> Run avahi-daemon to publish any services (it will do so by default) and analyze the UDP packages sent out.
>> Fix:
> Workaround: disable rxcsum/txcsum on the interface.
Please confirm that you ran tcpdump from ANOTHER system, not the one
generating the packets. See the tcpdump manpage for more discussion of
hardware checksumming and tcpdump.
Kris
More information about the freebsd-bugs
mailing list