From: Felix Fietkau <nbd@openwrt.org>
Date: Mon, 15 Jul 2013 12:35:23 +0000 (+0000)
Subject: mac80211: fix a crash in legacy minstrel when no STA exists
X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=a5e70c13f8a7652abe052c44fb676c2f3087f0f5;p=openwrt%2Fstaging%2Fansuel.git

mac80211: fix a crash in legacy minstrel when no STA exists

Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 37342
---

diff --git a/package/kernel/mac80211/patches/300-pending_work.patch b/package/kernel/mac80211/patches/300-pending_work.patch
index b35f5c6036..c5a61bb7d5 100644
--- a/package/kernel/mac80211/patches/300-pending_work.patch
+++ b/package/kernel/mac80211/patches/300-pending_work.patch
@@ -779,3 +779,22 @@
  }
  
  static int cfg80211_sme_connect(struct wireless_dev *wdev,
+--- a/net/mac80211/rc80211_minstrel.c
++++ b/net/mac80211/rc80211_minstrel.c
+@@ -290,7 +290,7 @@ minstrel_get_rate(void *priv, struct iee
+ 	struct minstrel_rate *msr, *mr;
+ 	unsigned int ndx;
+ 	bool mrr_capable;
+-	bool prev_sample = mi->prev_sample;
++	bool prev_sample;
+ 	int delta;
+ 	int sampling_ratio;
+ 
+@@ -314,6 +314,7 @@ minstrel_get_rate(void *priv, struct iee
+ 			(mi->sample_count + mi->sample_deferred / 2);
+ 
+ 	/* delta < 0: no sampling required */
++	prev_sample = mi->prev_sample;
+ 	mi->prev_sample = false;
+ 	if (delta < 0 || (!mrr_capable && prev_sample))
+ 		return;