aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/wireless/ath/ath9k/htc_drv_txrx.c
diff options
context:
space:
mode:
authorSujith Manoharan <Sujith.Manoharan@atheros.com>2011-04-13 11:24:19 +0530
committerJohn W. Linville <linville@tuxdriver.com>2011-04-13 15:22:44 -0400
commitb1563a4c3d721cb0496b8e1fb874f08a8f2b62cc (patch)
tree263698eeda5026495c76fe678fde57c70fad8290 /drivers/net/wireless/ath/ath9k/htc_drv_txrx.c
parent719c4cf6b1b113e9caf377c6607ae45758a85871 (diff)
downloadkernel_samsung_smdk4412-b1563a4c3d721cb0496b8e1fb874f08a8f2b62cc.zip
kernel_samsung_smdk4412-b1563a4c3d721cb0496b8e1fb874f08a8f2b62cc.tar.gz
kernel_samsung_smdk4412-b1563a4c3d721cb0496b8e1fb874f08a8f2b62cc.tar.bz2
ath9k_htc: Fix RX length check
The length of the received SKB could be equal to HTC_RX_FRAME_HEADER_SIZE in case of packets with phy/crc errors, in which case they are dropped without being processed. Fix this check so that the error counters are updated correctly. Signed-off-by: Sujith Manoharan <Sujith.Manoharan@atheros.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/ath/ath9k/htc_drv_txrx.c')
-rw-r--r--drivers/net/wireless/ath/ath9k/htc_drv_txrx.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/net/wireless/ath/ath9k/htc_drv_txrx.c b/drivers/net/wireless/ath/ath9k/htc_drv_txrx.c
index a62495d..7cd3e4e 100644
--- a/drivers/net/wireless/ath/ath9k/htc_drv_txrx.c
+++ b/drivers/net/wireless/ath/ath9k/htc_drv_txrx.c
@@ -525,8 +525,9 @@ static bool ath9k_rx_prepare(struct ath9k_htc_priv *priv,
int last_rssi = ATH_RSSI_DUMMY_MARKER;
__le16 fc;
- if (skb->len <= HTC_RX_FRAME_HEADER_SIZE) {
- ath_err(common, "Corrupted RX frame, dropping\n");
+ if (skb->len < HTC_RX_FRAME_HEADER_SIZE) {
+ ath_err(common, "Corrupted RX frame, dropping (len: %d)\n",
+ skb->len);
goto rx_next;
}