]> git.baikalelectronics.ru Git - kernel.git/commit
wl1271: Fix RX path stall
authorJuuso Oikarinen <juuso.oikarinen@nokia.com>
Mon, 25 Oct 2010 09:24:29 +0000 (11:24 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 15 Nov 2010 18:25:17 +0000 (13:25 -0500)
commit4a3a09d42572d1d094aa5600a03210dad4c763f4
treefa594b03f29efe5b6e23335514fb4412162a6c3a
parent2d94d1524315b9fa50f14bbb2928c221dd25c7a8
wl1271: Fix RX path stall

The wl1271_rx function loops through packets in an aggregated buffer. Each
packet in the buffer is handled by a call to wl1271_rx_handle_data, which will
fail if skb memory allocation fails or production mode is enabled. These
failures currently prevent the rx counters to be incremented, thus causing the
rx loop to run forever.

Fix this by ignoring error codes reported wl1271_rx_handle_data function.
This essentially means that frames will be dropped in production mode, which
is the intetion, and frames will be dropped if memory allocation fails, which
is a decent way to recover from that situation.

Signed-off-by: Juuso Oikarinen <juuso.oikarinen@nokia.com>
Tested-by: Tuomas Katila <ext-tuomas.2.katila@nokia.com>
Reviewed-by: Luciano Coelho <luciano.coelho@nokia.com>
Signed-off-by: Luciano Coelho <luciano.coelho@nokia.com>
drivers/net/wireless/wl12xx/wl1271_rx.c