Re: [PATCH] b43: Increase number of RX DMA slots
From: Larry Finger <hidden>
Date: 2013-02-18 20:10:58
Also in:
linux-wireless
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