summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIvo van Doorn2010-10-11 15:38:26 +0200
committerJohn W. Linville2010-10-11 21:04:26 +0200
commit1550c8ef835af17df322045e92541561afa0f017 (patch)
treef3b1e789f3bca0f5793ce87c03160fda97f5a2bc
parentrt2x00: Validate MCS on RX path (diff)
downloadkernel-qcow2-linux-1550c8ef835af17df322045e92541561afa0f017.tar.gz
kernel-qcow2-linux-1550c8ef835af17df322045e92541561afa0f017.tar.xz
kernel-qcow2-linux-1550c8ef835af17df322045e92541561afa0f017.zip
rt2x00: Fix dead queue when skb allocation failed
When the RX skb allocation failed, we should recycle the previously allocated skbuffer. By calling return we would kill the RX queue completely since the entry would be invalidated. Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com> Acked-by: Helmut Schaa <helmut.schaa@googlemail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r--drivers/net/wireless/rt2x00/rt2x00dev.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2x00dev.c b/drivers/net/wireless/rt2x00/rt2x00dev.c
index db25209688fb..e5e8ba3bf228 100644
--- a/drivers/net/wireless/rt2x00/rt2x00dev.c
+++ b/drivers/net/wireless/rt2x00/rt2x00dev.c
@@ -491,7 +491,7 @@ void rt2x00lib_rxdone(struct queue_entry *entry)
*/
skb = rt2x00queue_alloc_rxskb(entry);
if (!skb)
- return;
+ goto submit_entry;
/*
* Unmap the skb.