ath9k: move the rx_stats->rs_datalen check to ath9k_rx_accept()
Signed-off-by: Luis R. Rodriguez <lrodriguez@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
diff --git a/drivers/net/wireless/ath/ath9k/recv.c b/drivers/net/wireless/ath/ath9k/recv.c
index 0793614..4420a58 100644
--- a/drivers/net/wireless/ath/ath9k/recv.c
+++ b/drivers/net/wireless/ath/ath9k/recv.c
@@ -100,6 +100,9 @@
hdr = (struct ieee80211_hdr *) skb->data;
fc = hdr->frame_control;
+ if (!rx_stats->rs_datalen)
+ return false;
+
if (rx_stats->rs_more) {
/*
* Frame spans multiple descriptors; this cannot happen yet
@@ -793,9 +796,6 @@
if (flush)
goto requeue;
- if (!rx_stats->rs_datalen)
- goto requeue;
-
/* The status portion of the descriptor could get corrupted. */
if (sc->rx.bufsize < rx_stats->rs_datalen)
goto requeue;