Date: Tue, 2 Dec 2008 18:06:59 GMT From: Andrew Thompson <thompsa@FreeBSD.org> To: Perforce Change Reviews <perforce@freebsd.org> Subject: PERFORCE change 153962 for review Message-ID: <200812021806.mB2I6xHY093141@repoman.freebsd.org>
index | next in thread | raw e-mail
http://perforce.freebsd.org/chv.cgi?CH=153962 Change 153962 by thompsa@thompsa_burger on 2008/12/02 18:06:24 If the parent up/down task was queued then sync with it before returning from the vap ioctl. This means that the parent interface _should_ be up before we return to userland, it does not depend on the parent init succeeding, just that it was run. This fixes wpa_supplicant with ndis as it fires passthrough OID ioctls as soon as the vap is up yet the parent may still be down. Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_ioctl.c#70 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_ioctl.c#70 (text+ko) ==== @@ -42,6 +42,7 @@ #include <sys/socket.h> #include <sys/sockio.h> #include <sys/systm.h> +#include <sys/taskqueue.h> #include <net/if.h> #include <net/if_dl.h> @@ -3213,6 +3214,8 @@ ieee80211_stop_locked(vap); } IEEE80211_UNLOCK(ic); + /* Wait for parent ioctl handler if it was queued */ + taskqueue_drain(taskqueue_thread, &ic->ic_parent_task); break; case SIOCADDMULTI: case SIOCDELMULTI:help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200812021806.mB2I6xHY093141>
