Subject: kern/28595: wm driver routing problem if hardware checksum enabled
To: None <,,>
From: Markus W Kilbinger <>
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
>Release:        NetBSD 2.99.11
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
	-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

	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.
	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.
	Workaround: Turning off all *4csum's re-enables routing again
	and the above mentioned error messages disappear.
	Otherwise: n/a