From patchwork Wed Apr 13 05:54:19 2011 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Sujith Manoharan X-Patchwork-Id: 702771 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by demeter1.kernel.org (8.14.4/8.14.3) with ESMTP id p3D5pu76025335 for ; Wed, 13 Apr 2011 05:51:56 GMT Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752455Ab1DMFvz (ORCPT ); Wed, 13 Apr 2011 01:51:55 -0400 Received: from mail-pz0-f46.google.com ([209.85.210.46]:60494 "EHLO mail-pz0-f46.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752572Ab1DMFvz (ORCPT ); Wed, 13 Apr 2011 01:51:55 -0400 Received: by pzk9 with SMTP id 9so107951pzk.19 for ; Tue, 12 Apr 2011 22:51:54 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=gamma; h=domainkey-signature:from:mime-version:content-type :content-transfer-encoding:message-id:date:to:x-mailer:cc:subject; bh=2hgGwgCr9hiQ2+seGVh+uetnRBLEsFuSb2PO/Lr1qqc=; b=Zm0JFJ0tK4zxtBq29W2RmRdfSnq4r17t0xQ4QcjjBWjiPb4Ofcx7Gq70U5ZCeqBWFo g9KsbTLIErQF0Zht6LTxjvvyAOu17dM3WuMSwcFSjR8lk329FumEHGHfDCl1coDexOIa Br/uDZPqhYfAMeSwakZI0umkldbGDMMDVX9/U= DomainKey-Signature: a=rsa-sha1; c=nofws; d=gmail.com; s=gamma; h=from:mime-version:content-type:content-transfer-encoding:message-id :date:to:x-mailer:cc:subject; b=O0pHd7xpVUNIpug6UGaRoS4Ly0zYaG3VUSpE+Wx3A6Qmqv9IjACtNyx7Y/EQGWNjjm MwwyqOqIlE3XtqmppmT8vyWxKErbKMSl3Rtdv6zSJXxkhz0atFqBQAQgBWXwUUFwfunv AFjqLReZtmig9wTBvV7mMfzx4vvF0pSv4mXSM= Received: by 10.143.39.17 with SMTP id r17mr7042981wfj.113.1302673914576; Tue, 12 Apr 2011 22:51:54 -0700 (PDT) Received: from atheros-test ([182.72.177.186]) by mx.google.com with ESMTPS id 25sm350127wfb.10.2011.04.12.22.51.52 (version=TLSv1/SSLv3 cipher=OTHER); Tue, 12 Apr 2011 22:51:53 -0700 (PDT) From: Sujith MIME-Version: 1.0 Message-ID: <19877.14987.142612.37729@gargle.gargle.HOWL> Date: Wed, 13 Apr 2011 11:24:19 +0530 To: linville@tuxdriver.com X-Mailer: VM 8.1.1 under 23.3.1 (x86_64-unknown-linux-gnu) CC: linux-wireless@vger.kernel.org, ath9k-devel@venema.h4ckr.net Subject: [PATCH 13/40] ath9k_htc: Fix RX length check Sender: linux-wireless-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org X-Greylist: IP, sender and recipient auto-whitelisted, not delayed by milter-greylist-4.2.6 (demeter1.kernel.org [140.211.167.41]); Wed, 13 Apr 2011 05:51:57 +0000 (UTC) From: Sujith Manoharan 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 --- drivers/net/wireless/ath/ath9k/htc_drv_txrx.c | 5 +++-- 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; }