On 02/18/2013 10:18 AM, Rafał Miłecki wrote:
2013/2/18 Larry Finger <Larry.Finger@xxxxxxxxxxxx>:
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
--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html