2013/2/18 Larry Finger [off-list ref]:
Bastian Bittorf reported that some of the silent freezes on a Linksys WRT54G
were due to overflow of the RX DMA ring buffer, which was created with 64
slots. That finding reminded me that I was seeing similar crashed on a netbook,
which also has a relatively slow processor. After increasing the number of
slots to 128, runs on the netbook that previously failed now worked; however,
I found that 109 slots had been used in one test. For that reason, the number
of slots is being increased to 256.
So probably ideal solution is to use 128 *and* fix the driver's
failing on overflow ;)
Did you try it on some old device? Just for sure firmware&DMA will
handle it correctly.
--
Rafał
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
On 02/18/2013 10:18 AM, Rafał Miłecki wrote:
2013/2/18 Larry Finger [off-list ref]:
quoted
Bastian Bittorf reported that some of the silent freezes on a Linksys WRT54G
were due to overflow of the RX DMA ring buffer, which was created with 64
slots. That finding reminded me that I was seeing similar crashed on a netbook,
which also has a relatively slow processor. After increasing the number of
slots to 128, runs on the netbook that previously failed now worked; however,
I found that 109 slots had been used in one test. For that reason, the number
of slots is being increased to 256.
So probably ideal solution is to use 128 *and* fix the driver's
failing on overflow ;)
Did you try it on some old device? Just for sure firmware&DMA will
handle it correctly.
I tested on BCM4318 (which is pretty old), and two different BCM4312 (14e4:4315)
units. I think the firmware and DMA can handle it. After all, all the TX rings
have 256 slots. There is, however, a question of the memory. TX only acquires
the buffers when needed, but RX has to get them in advance, thus 256 slots there
will waste a lot of memory.
I agree that there be two patches, depending on Bastian's testing. The slot size
change can be backported to stable.
Larry
* Larry Finger [off-list ref] [18.02.2013 21:17]:
(14e4:4315) units. I think the firmware and DMA can handle it. After
all, all the TX rings have 256 slots. There is, however, a question
of the memory. TX only acquires the buffers when needed, but RX has
to get them in advance, thus 256 slots there will waste a lot of
memory.
I did some testing with 256 slots and the
"b43-workaround-rx-fifo-overflow.patch" on a very slow board,
an i'am sure, that 128 slots are not enough. kernel-log is here:
http://intercity-vpn.de/files/openwrt/b43test.dmesg.txt
this was a normal download (100mb @ 1 megabyte/s), but if you
do some udp-magic (netperf) you run soon into trouble.
thanks for your work!
bye, bastian / wireless.subsignal.org / weimarnetz e.V.