B43: Handle DMA RX descriptor underrun
authorThommy Jakobsson <thommyj@gmail.com>
Tue, 23 Apr 2013 19:45:11 +0000 (21:45 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Wed, 8 May 2013 21:15:06 +0000 (17:15 -0400)
commit73b82bf0bfbf58e6ff328d3726934370585f6e78
tree19c23412ef8e7fbf7353eeb7084bf96c962ed725
parentdb178340433f90e09ada35c174dfb2c84c2c71f4
B43: Handle DMA RX descriptor underrun

Add handling of rx descriptor underflow. This fixes a fault that could
happen on slow machines, where data is received faster than the CPU can
handle. In such a case the device will use up all rx descriptors and
refuse to send any more data before confirming that it is ok. This
patch enables necessary interrupt to discover such a situation and will
handle them by dropping everything in the ring buffer.

Reviewed-by: Michael Buesch <m@bues.ch>
Signed-off-by: Thommy Jakobsson <thommyj@gmail.com>
Cc: stable <stable@vger.kernel.org>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
drivers/net/wireless/b43/dma.c
drivers/net/wireless/b43/dma.h
drivers/net/wireless/b43/main.c