OSDN Git Service

rt2x00: Fix dead queue when skb allocation failed
authorIvo van Doorn <ivdoorn@gmail.com>
Mon, 11 Oct 2010 13:38:26 +0000 (15:38 +0200)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 11 Oct 2010 19:04:26 +0000 (15:04 -0400)
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>
drivers/net/wireless/rt2x00/rt2x00dev.c

index db25209..e5e8ba3 100644 (file)
@@ -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.