carl9170: fix spurious restart due to high latency

RX Stress tests of unidirectional bulk traffic with
bitrates of up to 220Mbit/s have revealed that the
fatal-event recovery logic [which was solely triggered
by an out-of-rx-buffer situation] is too aggressive.

The new method now "pings" the device and then
decides - based on the response - whenever
a restart is needed or not.

Signed-off-by: Christian Lamparter <chunkeey@googlemail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
Christian Lamparter
2010-10-29 23:26:13 +02:00
committed by John W. Linville
parent e27769059c
commit e4a668c590
3 changed files with 20 additions and 2 deletions

View File

@@ -431,7 +431,7 @@ static void carl9170_usb_rx_complete(struct urb *urb)
* device.
*/
carl9170_restart(ar, CARL9170_RR_SLOW_SYSTEM);
ieee80211_queue_work(ar->hw, &ar->ping_work);
}
} else {
/*