From: "Michael Büsch" <m@bues.ch>
To: b43-dev@lists.infradead.org
Subject: problems with b43 and greedy traffic
Date: Sat, 11 Jun 2011 22:34:15 +0200 [thread overview]
Message-ID: <20110611223415.2f39adde@maggie> (raw)
In-Reply-To: <BANLkTikBEK=+7HuU_AxYLfq+xvDBpP5b5w@mail.gmail.com>
On Sat, 11 Jun 2011 22:28:00 +0200
Rafa? Mi?ecki <zajec5@gmail.com> wrote:
> 2011/4/21 <francesco.gringoli@ing.unibs.it>:
> > Hello Michael,
> >
> > I'm doing experiments sending greedy udp traffic from a b43 station to a b43 access point. I have noticed that switching from 2.6.34-rc7 to 2.6.35 the sendmsg call becomes "almost" non blocking when sending from a Broadcom nic while it is still as usual with other nics.
> >
> > If I load the channel with a 54Mb/s iperf stream (iperf -b54M ...) on < 2.6.35 I see that the application is blocked times to times when calling sendmsg() so that it is slowed down to the channel capabilities and packets are not internally dropped. Clearly they can still be lost on the air :-)
> >
> > With >= 2.6.35 the application is never blocked and all the packets exceeding the channel capabilities are internally lost by the kernel: in particular it is the asynchronous tx worker (b43_tx_work) that drops them, since it calls b43_dma_tx even if the interface has been stopped because the dma FIFO queue was full. Apart from packets being lost, the CPU load increases since packets cross all the kernel code, from udp_sendmsg down to b43_dma_tx even if they will be dropped.
> >
> > I don't think this is the expected behavior on Linux: I did some testing to check what happens with other devices and I can experience only the first behavior on Intel and Atheros WiFi nics as well as on Fast Ethernet nics (in this case I run iperf -b100M :-) independently of the kernel version.
> >
> > Strangely the b43 sources in 2.6.35 are really similar to those in 2.6.34-rc7 and the differences do not seem to justify the different behavior. There are also other weird observations (like qdisc never used in < 2.6.34-rc7) but I would like to have a first opinion from your side.
> >
> > Many thanks,
> > -Francesco
> >
> > P.S. what reported does not depend on the firmware version. I also tried a few cards (4306, 4311 and 4318) and nothing changed.
>
> I have (finally) found some time to dig into it. First of all, I
> reproduced this on wireless-testing (3.0-rc2) on my BCM4312. I
> "achieved" 34 Gb/s of UDP traffic.
>
> The problem is that we do not stop any queue. I've been transferring
> UDP stream for 10 seconds, and queued was not stopped even once.
>
> We stop queue when the ring is full, so I've added debugging message
> every time "used_slots" changes for TX ring. Over that 10 seconds the
> maximal value of "used_slots" was 14.
>
> Does it mean firmware lies us about transmitted packages? Any hints anyone?
No that would horribly crash.
I'd rather say that we are dropping packets somewhere before they even reach DMA.
next prev parent reply other threads:[~2011-06-11 20:34 UTC|newest]
Thread overview: 27+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-04-21 18:31 problems with b43 and greedy traffic francesco.gringoli at ing.unibs.it
2011-04-21 18:35 ` Michael Büsch
2011-04-21 21:08 ` Larry Finger
2011-04-22 10:09 ` francesco.gringoli at ing.unibs.it
2011-04-22 19:37 ` francesco.gringoli at ing.unibs.it
2011-04-22 19:58 ` Francesco Gringoli
2011-04-22 21:07 ` Tom Gundersen
2011-04-22 23:37 ` francesco.gringoli at ing.unibs.it
2011-04-26 10:11 ` francesco.gringoli at ing.unibs.it
2011-04-26 14:53 ` Rafał Miłecki
2011-04-26 15:21 ` problems with b43 and greedy (UDP) traffic Larry Finger
2011-04-30 17:03 ` francesco.gringoli at ing.unibs.it
2011-04-30 15:54 ` problems with b43 and greedy traffic francesco.gringoli at ing.unibs.it
2011-04-30 16:01 ` francesco.gringoli at ing.unibs.it
2011-06-11 20:28 ` Rafał Miłecki
2011-06-11 20:34 ` Michael Büsch [this message]
2011-06-11 20:48 ` Rafał Miłecki
2011-06-11 21:17 ` Rafał Miłecki
2011-06-11 21:46 ` Michael Büsch
2011-06-11 22:55 ` francesco.gringoli at ing.unibs.it
2011-06-11 23:19 ` Michael Büsch
2011-06-12 5:28 ` francesco.gringoli at ing.unibs.it
2011-06-12 8:19 ` Michael Büsch
2011-06-12 12:53 ` Rafał Miłecki
2011-06-12 15:33 ` francesco.gringoli at ing.unibs.it
2011-06-12 14:45 ` Rafał Miłecki
2011-06-11 22:48 ` francesco.gringoli at ing.unibs.it
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20110611223415.2f39adde@maggie \
--to=m@bues.ch \
--cc=b43-dev@lists.infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox