bogus 0 len IP packet,
was: Hang in VOP_LOCK1_APV on 8-STABLE with NFS.
Pyun YongHyeon
pyunyh at gmail.com
Tue Jan 18 18:24:46 UTC 2011
On Tue, Jan 18, 2011 at 09:38:04AM +0100, sthaug at nethelp.no wrote:
> > > 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 at 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.
>
Is there a reliable way to trigger this on bce(4)? I don't have
BCM5708 but I have BCM5709 so I can verify that.
> Steinar Haug, Nethelp consulting, sthaug at nethelp.no
More information about the freebsd-net
mailing list