diff options
author | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-12-11 14:16:23 +0000 |
---|---|---|
committer | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2012-12-11 14:16:23 +0000 |
commit | a858489bbec82f0d0962039c8d984f58b8b0db6a (patch) | |
tree | 60c09e33c96c9e9e1e00760eb65291c53d3f5847 /package/mac80211/patches/307-pending-ath5k-zero-out-rx_status.patch | |
parent | d91c02e001d54cf7ccf420d2006f34a86e5cb629 (diff) |
mac80211: zero-out rx_status in rt2x00, ath5k, p54
Signed-off-by: Gabor Juhos <juhosg@openwrt.org>
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@34627 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/mac80211/patches/307-pending-ath5k-zero-out-rx_status.patch')
-rw-r--r-- | package/mac80211/patches/307-pending-ath5k-zero-out-rx_status.patch | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/package/mac80211/patches/307-pending-ath5k-zero-out-rx_status.patch b/package/mac80211/patches/307-pending-ath5k-zero-out-rx_status.patch new file mode 100644 index 000000000..3f8723adb --- /dev/null +++ b/package/mac80211/patches/307-pending-ath5k-zero-out-rx_status.patch @@ -0,0 +1,31 @@ +From 4c0faf816beeb5d4175cff09c96e668a49ad032f Mon Sep 17 00:00:00 2001 +From: Gabor Juhos <juhosg@openwrt.org> +Date: Tue, 11 Dec 2012 14:16:15 +0100 +Subject: [PATCH 2/3] ath5k: zero-out rx_status + +In commit 'mac80211: support radiotap vendor namespace RX data' +new fields were added to 'struct ieee80211_rx_status'. +The ath5k driver does not initializes those fields and +this can cause unexpected behaviour. The patch ensures +that each field gets initialized with zeroes. + +Cc: <ath5k-devel@lists.ath5k.org> +Signed-off-by: Gabor Juhos <juhosg@openwrt.org> +--- +Compile tested only. +--- + drivers/net/wireless/ath/ath5k/base.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +--- a/drivers/net/wireless/ath/ath5k/base.c ++++ b/drivers/net/wireless/ath/ath5k/base.c +@@ -1325,8 +1325,8 @@ ath5k_receive_frame(struct ath5k_hw *ah, + ath5k_remove_padding(skb); + + rxs = IEEE80211_SKB_RXCB(skb); ++ memset(rxs, 0, sizeof(*rxs)); + +- rxs->flag = 0; + if (unlikely(rs->rs_status & AR5K_RXERR_MIC)) + rxs->flag |= RX_FLAG_MMIC_ERROR; + |