Date: Tue, 18 Jan 2011 09:38:04 +0100 (CET) From: sthaug@nethelp.no To: pyunyh@gmail.com Cc: freebsd-net@freebsd.org, rmacklem@uoguelph.ca, ronald-freebsd8@klop.yi.org Subject: Re: bogus 0 len IP packet, was: Hang in VOP_LOCK1_APV on 8-STABLE with NFS. Message-ID: <20110118.093804.74673434.sthaug@nethelp.no> In-Reply-To: <20110117005524.GA1305@michelle.cdnetworks.com> References: <op.vpekz9uz8527sy@212-123-145-58.ip.telfort.nl> <708793006.292748.1295186099577.JavaMail.root@erie.cs.uoguelph.ca> <20110117005524.GA1305@michelle.cdnetworks.com>
next in thread | previous in thread | raw e-mail | index | archive | help
> > So, does anyone have an idea why the IP length field would be set to 0
> > for these TCP/IP packets?
> >
> > Here's some info from Ronald w.r.t. his hardware. (All I can think of is
> > that he could try disabling TSO, etc?)
> >
> > Thanks in advance for any help with this, rick
> >
>
> It seems that issue came from TSO. Driver will set ip_len and
> ip_sum field to 0 before passing the TCP segment to controller.
> The failed length were 4446, 5858, 3034 and 4310 and the total
> number of such frames are more than 35k within 90 seconds. Since
> failed length 4310 is continuously repeated I guess there is edge
> case where em(4) didn't free failed TCP segment for TSO.
> I remember there was commit to HEAD(r217295) which could be related
> with this issue.
I'm seeing the same problem with Broadcom NetXtreme (bce) cards:
bce0@pci0:3:0:0: class=0x020000 card=0x03421014 chip=0x164c14e4 rev=0x12 hdr=0x00
vendor = 'Broadcom Corporation'
device = 'Broadcom NetXtreme II Gigabit Ethernet Adapter (BCM5708)'
class = network
subclass = ethernet
This is with 8.2-PRERELEASE. Turning off TSO (ifconfig bce0 -tso)
removes the problem.
Steinar Haug, Nethelp consulting, sthaug@nethelp.no
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20110118.093804.74673434.sthaug>
