summaryrefslogtreecommitdiffstats
path: root/sys/net80211/ieee80211.c
diff options
context:
space:
mode:
authorthompsa <thompsa@FreeBSD.org>2009-02-12 18:57:18 +0000
committerthompsa <thompsa@FreeBSD.org>2009-02-12 18:57:18 +0000
commit251dd2ca418183142f0f78ada90a77fa46a3b88f (patch)
treeb2387f8d726c23cdd8238be123008604c2dc3292 /sys/net80211/ieee80211.c
parentcc499f763ee65f3e6109a50d14b10ef520ca6079 (diff)
downloadFreeBSD-src-251dd2ca418183142f0f78ada90a77fa46a3b88f.zip
FreeBSD-src-251dd2ca418183142f0f78ada90a77fa46a3b88f.tar.gz
Add a ieee80211_waitfor_parent() function that will wait for all deferred
parent interface tasks to complete. This had been added to the ioctl path but it is also need elsewhere like detach so its safe to teardown. Reported by: Hans Petter Selasky Submitted by: sam
Diffstat (limited to 'sys/net80211/ieee80211.c')
-rw-r--r--sys/net80211/ieee80211.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sys/net80211/ieee80211.c b/sys/net80211/ieee80211.c
index 4dd8776..7a02eda 100644
--- a/sys/net80211/ieee80211.c
+++ b/sys/net80211/ieee80211.c
@@ -289,9 +289,9 @@ ieee80211_ifdetach(struct ieee80211com *ic)
struct ifnet *ifp = ic->ic_ifp;
struct ieee80211vap *vap;
- /* XXX ieee80211_stop_all? */
while ((vap = TAILQ_FIRST(&ic->ic_vaps)) != NULL)
ieee80211_vap_destroy(vap);
+ ieee80211_waitfor_parent(ic);
ieee80211_sysctl_detach(ic);
ieee80211_regdomain_detach(ic);
OpenPOWER on IntegriCloud