Subject: kern/28595: wm driver routing problem if hardware checksum enabled
To: None <kern-bug-people@netbsd.org, gnats-admin@netbsd.org,>
From: Markus W Kilbinger <kilbi@rad.rwth-aachen.de>
List: netbsd-bugs
Date: 12/09/2004 21:24:02
>Number: 28595
>Category: kern
>Synopsis: recent -current/wm driver changes breaks packet routing if hardware checksum is enabled
>Confidential: no
>Severity: non-critical
>Priority: high
>Responsible: kern-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Thu Dec 09 21:24:02 +0000 2004
>Originator: kilbi@rad.rwth-aachen.de
>Release: NetBSD 2.99.11
>Organization:
>Environment:
System: NetBSD mogli 2.99.11 NetBSD 2.99.11 (MOGLI) #0: Thu Dec 9 14:00:44 MET 2004 root@lwle5:/usr/src/sys/arch/i386/compile/MOGLI i386
Architecture: i386
Machine: i386
>Description:
-current changes between Nov 13th and Nov 30th 2004 prevents
our router with its two wm nics from routing network packets
if hardware checksums ({ip,tcp,udp}4csum) are enabled. Instead
it produces error messages like:
wm1: wm_tx_offload: packet headers did not fit in first mbuf, packet dropped
wm0: wm_tx_offload: packet headers did not fit in first mbuf, packet dropped
(see
http://mail-index.netbsd.org/current-users/2004/11/30/0003.html
for more wm details) and does not route (ipv4) packets. Remote
login over network into this machine still seems to work in
this situation.
A -current kernel from Nov 13th sources seems to work/route
properly with *4csum turned on.
>How-To-Repeat:
Take a (i386) machine with two wm nics and a -current kernel,
configure the wm nics with *4csum's enabled, put the machine
in a routing position and try to route network packets over
this machine as a router.
Sorry, it's the only machine with wm nics and in a production
environment, so I cannot play with its nic situation freely.
>Fix:
Workaround: Turning off all *4csum's re-enables routing again
and the above mentioned error messages disappear.
Otherwise: n/a