aboutsummaryrefslogtreecommitdiffstats
path: root/package/mac80211
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@openwrt.org>2009-11-11 16:32:09 +0000
committerFelix Fietkau <nbd@openwrt.org>2009-11-11 16:32:09 +0000
commit7e5995898fcef81872537301e82bbe36c3965a57 (patch)
tree43c738de080f62db846d8ea87331ef9cf6a65341 /package/mac80211
parent795f9b8a42a1fae267c30cfe79405d03dc5a5233 (diff)
downloadupstream-7e5995898fcef81872537301e82bbe36c3965a57.tar.gz
upstream-7e5995898fcef81872537301e82bbe36c3965a57.tar.bz2
upstream-7e5995898fcef81872537301e82bbe36c3965a57.zip
mac80211: fix a race condition when bringing up wds sta interfaces on the ap
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@18377 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'package/mac80211')
-rw-r--r--package/mac80211/patches/520-nl80211_vlan_add_fix.patch20
1 files changed, 20 insertions, 0 deletions
diff --git a/package/mac80211/patches/520-nl80211_vlan_add_fix.patch b/package/mac80211/patches/520-nl80211_vlan_add_fix.patch
new file mode 100644
index 0000000000..e0cdaead15
--- /dev/null
+++ b/package/mac80211/patches/520-nl80211_vlan_add_fix.patch
@@ -0,0 +1,20 @@
+--- a/net/wireless/nl80211.c
++++ b/net/wireless/nl80211.c
+@@ -1813,7 +1813,7 @@ static int nl80211_get_station(struct sk
+ }
+
+ /*
+- * Get vlan interface making sure it is on the right wiphy.
++ * Get vlan interface making sure it is running and on the right wiphy.
+ */
+ static int get_vlan(struct genl_info *info,
+ struct cfg80211_registered_device *rdev,
+@@ -1831,6 +1831,8 @@ static int get_vlan(struct genl_info *in
+ return -EINVAL;
+ if ((*vlan)->ieee80211_ptr->wiphy != &rdev->wiphy)
+ return -EINVAL;
++ if (!netif_running(*vlan))
++ return -ENETDOWN;
+ }
+ return 0;
+ }