|
|
@@ -1,12 +1,13 @@
|
|
|
-From 84b435b38a84c9a7e8ba33e8d02d2f967f847ce1 Mon Sep 17 00:00:00 2001
|
|
|
+From e922d683ca8001ce9a6272d6ab12d74e72c36521 Mon Sep 17 00:00:00 2001
|
|
|
From: Gabor Juhos <[email protected]>
|
|
|
Date: Tue, 11 Dec 2012 14:15:53 +0100
|
|
|
-Subject: [PATCH 1/3] rt2x00: zero-out rx_status
|
|
|
+Subject: [PATCH v2] rt2x00: zero-out rx_status
|
|
|
|
|
|
In commit 'mac80211: support radiotap vendor namespace RX data'
|
|
|
-new fields were added to 'struct ieee80211_rx_status'.
|
|
|
-The rt2x00 driver does not initializes those fields and
|
|
|
-this can cause unexpected behaviour.
|
|
|
+new fields were added to 'struct ieee80211_rx_status' and those
|
|
|
+fileds must be zeroed. However the rt2x00 driver stores driver
|
|
|
+specific data in the cb array of the rx skbs, so the fields
|
|
|
+might contain garbage and this can cause unexpected behaviour.
|
|
|
|
|
|
The rt2x00 driver from the compat-wireless-2012-12-01
|
|
|
tarball caused the following warning:
|
|
|
@@ -38,15 +39,25 @@ zeroes.
|
|
|
Cc: <[email protected]>
|
|
|
Signed-off-by: Gabor Juhos <[email protected]>
|
|
|
---
|
|
|
- drivers/net/wireless/rt2x00/rt2x00dev.c | 2 ++
|
|
|
- 1 file changed, 2 insertions(+)
|
|
|
+v2:
|
|
|
+ - update the commit message and add a comment to the code
|
|
|
+ - drop the ath5k and p54 patches
|
|
|
+---
|
|
|
+ drivers/net/wireless/rt2x00/rt2x00dev.c | 8 ++++++++
|
|
|
+ 1 file changed, 8 insertions(+)
|
|
|
|
|
|
--- a/drivers/net/wireless/rt2x00/rt2x00dev.c
|
|
|
+++ b/drivers/net/wireless/rt2x00/rt2x00dev.c
|
|
|
-@@ -685,6 +685,8 @@ void rt2x00lib_rxdone(struct queue_entry
|
|
|
+@@ -685,6 +685,14 @@ void rt2x00lib_rxdone(struct queue_entry
|
|
|
* to mac80211.
|
|
|
*/
|
|
|
rx_status = IEEE80211_SKB_RXCB(entry->skb);
|
|
|
++
|
|
|
++ /* Ensure that all fields of rx_status are initialized
|
|
|
++ * properly. The skb->cb array was used for driver
|
|
|
++ * specific informations, so rx_status might contain
|
|
|
++ * garbage.
|
|
|
++ */
|
|
|
+ memset(rx_status, 0, sizeof(*rx_status));
|
|
|
+
|
|
|
rx_status->mactime = rxdesc.timestamp;
|