summaryrefslogtreecommitdiffstats
path: root/sys/dev/if_ndis
diff options
context:
space:
mode:
authorwpaul <wpaul@FreeBSD.org>2004-02-07 23:52:58 +0000
committerwpaul <wpaul@FreeBSD.org>2004-02-07 23:52:58 +0000
commit3b12a6e6bd402f1b2286534e44561a9a88dafc56 (patch)
treef7507c2dfc6ab0787e99b1f0f3468b73c987f648 /sys/dev/if_ndis
parent31e40b57ebdf8175815203191df77285ee928c24 (diff)
downloadFreeBSD-src-3b12a6e6bd402f1b2286534e44561a9a88dafc56.zip
FreeBSD-src-3b12a6e6bd402f1b2286534e44561a9a88dafc56.tar.gz
Don't hold NDIS_LOCK() around call to ndis_getstate_80211() since it
may block on ndis_get_info().
Diffstat (limited to 'sys/dev/if_ndis')
-rw-r--r--sys/dev/if_ndis/if_ndis.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/dev/if_ndis/if_ndis.c b/sys/dev/if_ndis/if_ndis.c
index d60d3b3..61c6d27 100644
--- a/sys/dev/if_ndis/if_ndis.c
+++ b/sys/dev/if_ndis/if_ndis.c
@@ -1250,8 +1250,10 @@ ndis_ticktask(xsc)
if (sc->ndis_link == 0 && linkstate == nmc_connected) {
device_printf(sc->ndis_dev, "link up\n");
sc->ndis_link = 1;
+ NDIS_UNLOCK(sc);
if (sc->ndis_80211)
ndis_getstate_80211(sc);
+ NDIS_LOCK(sc);
}
if (sc->ndis_link == 1 && linkstate == nmc_disconnected) {
OpenPOWER on IntegriCloud