From ba949e0f758d0f039cb9be6aa2ae195eb4cda83c Mon Sep 17 00:00:00 2001
From: nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Date: Wed, 14 Oct 2009 08:29:46 +0000
Subject: madwifi: fix race condition on ibss init (#5935)

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@18046 3c298f89-4303-0410-b956-a3cf2f4a3e73
---
 package/madwifi/patches/451-ibss_race_fix.patch | 12 ++++++++++++
 1 file changed, 12 insertions(+)
 create mode 100644 package/madwifi/patches/451-ibss_race_fix.patch

(limited to 'package/madwifi')

diff --git a/package/madwifi/patches/451-ibss_race_fix.patch b/package/madwifi/patches/451-ibss_race_fix.patch
new file mode 100644
index 000000000..c63901d9e
--- /dev/null
+++ b/package/madwifi/patches/451-ibss_race_fix.patch
@@ -0,0 +1,12 @@
+--- a/net80211/ieee80211_input.c
++++ b/net80211/ieee80211_input.c
+@@ -3573,6 +3573,9 @@ ieee80211_recv_mgmt(struct ieee80211vap 
+ 				found = 1;
+ 				ni = ni_or_null = vap->iv_wdsnode;
+ 			} else if (vap->iv_opmode == IEEE80211_M_IBSS) {
++				if (vap->iv_state != IEEE80211_S_RUN)
++					break;
++
+ 				ni_or_null = ieee80211_find_node(&ic->ic_sta, wh->i_addr2);
+ 				if (ni_or_null)
+ 					ni = ni_or_null;
-- 
cgit v1.2.3