kern/119635: Bad UDP packet checksum with em(4) and rxcsum/txcsum
enabled
Bernd Heller
bdheller at users.sourceforge.net
Sun Jan 13 16:30:02 UTC 2008
>Number: 119635
>Category: kern
>Synopsis: Bad UDP packet checksum with em(4) and rxcsum/txcsum enabled
>Confidential: no
>Severity: non-critical
>Priority: low
>Responsible: freebsd-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Sun Jan 13 16:30:01 UTC 2008
>Closed-Date:
>Last-Modified:
>Originator: Bernd Heller
>Release: 7.0-RC1
>Organization:
>Environment:
FreeBSD 7.0-RC1 FreeBSD 7.0-RC1 #0: Mon Dec 24 10:10:07 UTC 2007 root at driscoll.cse.buffalo.edu:/usr/obj/usr/src/sys/GENERIC amd64
>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.
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-bugs
mailing list