b43 error under heavy load
Chris Vine
chris at cvine.freeserve.co.uk
Wed Jun 1 06:48:39 EDT 2011
On Wed, 1 Jun 2011 11:23:45 +0200
Rafał Miłecki <zajec5 at gmail.com> wrote:
> W dniu 1 czerwca 2011 01:29 użytkownik Chris Vine
> <chris at cvine.freeserve.co.uk> napisał:
> > However, fixing this bug reveals something else. After about 2
> > hours of streaming on MLB.TV I got this, apparently at random (but
> > this is not a hard error: by disassociating from the AP and
> > reassociating, the rest of the game played fine, and there was no
> > need to load or unload modules):
> >
> > b43-phy0 debug: TX-status contains invalid cookie: 0x0DCE
> > b43-phy0 debug: Out of order TX status report on DMA ring 1.
> > Expected 74, but got 76
>
> Chris, my first suspicion for this issue is filling the whole TX
> buffer. This could explain what does it happen on high traffic.
>
> Below there is an idea how we can easily test it. Can you take a look
> at this, and perform some testing?
>
>
> 2011/5/10 Rafał Miłecki <zajec5 at gmail.com>:
> > It seems to happen only under heavy load... maybe it has something
> > to do with reaching end of the ring (not whole ring, just end of
> > free slots)?
> >
> > Did you try verbose debugging? I wonder if there is any relation
> > between Out of order and:
> > if (b43_debug(dev, B43_DBG_DMAVERBOSE)) {
> > b43dbg(dev->wl, "Stopped TX ring %d\n", ring->index);
> > }
> >
> > Could you try it?
>
> AFAIK to enable this debugging you only need to:
> echo 1 > /sys/kernel/debug/b43/phy0/debug_dmaverbose
I don't have a /sys/kernel/debug directory with a running 3.0.0-rc1
kernel, so it appears that b43 debugging (which I do have enabled)
doesn't use it.
On the question of whether it is a firmware problem, I have not
experienced a similar issue with the wl driver, but the firmware that
b43 uses from broadcom-wl-4.178.10.4 seems to be an earlier version, so
that does not rule out the firmware: the earliest hybrid-portsrc wl
driver I have used is v5.10.91.9.3.
Chris
More information about the b43-dev
mailing list