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/308-pending-p54-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/308-pending-p54-zero-out-rx_status.patch')
-rw-r--r-- | package/mac80211/patches/308-pending-p54-zero-out-rx_status.patch | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/package/mac80211/patches/308-pending-p54-zero-out-rx_status.patch b/package/mac80211/patches/308-pending-p54-zero-out-rx_status.patch new file mode 100644 index 000000000..22ff2609f --- /dev/null +++ b/package/mac80211/patches/308-pending-p54-zero-out-rx_status.patch @@ -0,0 +1,30 @@ +From 6e73611e574ea3c8fe5afc67ee29d2c5ff777f4b Mon Sep 17 00:00:00 2001 +From: Gabor Juhos <juhosg@openwrt.org> +Date: Tue, 11 Dec 2012 14:16:29 +0100 +Subject: [PATCH 3/3] p54: 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: Christian Lamparter <chunkeey@googlemail.com> +Signed-off-by: Gabor Juhos <juhosg@openwrt.org> +--- +Compile tested only. +--- + drivers/net/wireless/p54/txrx.c | 2 ++ + 1 file changed, 2 insertions(+) + +--- a/drivers/net/wireless/p54/txrx.c ++++ b/drivers/net/wireless/p54/txrx.c +@@ -345,6 +345,8 @@ static int p54_rx_data(struct p54_common + if (!(hdr->flags & cpu_to_le16(P54_HDR_FLAG_DATA_IN_FCS_GOOD))) + return 0; + ++ memset(rx_status, 0, sizeof(*rx_status)); ++ + if (hdr->decrypt_status == P54_DECRYPT_OK) + rx_status->flag |= RX_FLAG_DECRYPTED; + if ((hdr->decrypt_status == P54_DECRYPT_FAIL_MICHAEL) || |