aboutsummaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorBruce M Simpson <bms@FreeBSD.org>2004-10-26 19:49:45 +0000
committerBruce M Simpson <bms@FreeBSD.org>2004-10-26 19:49:45 +0000
commit4cc36d8a8b6a9af7a5dcb8a618ddeecbb8a81007 (patch)
treedcaf63a8ff336841b49ec53b59b304ebf1b78d18 /sys
parentf674e945aa414d4c1239057a951015cdd5f1dc44 (diff)
Notes
Diffstat (limited to 'sys')
-rw-r--r--sys/dev/vr/if_vr.c2
-rw-r--r--sys/pci/if_vr.c2
2 files changed, 4 insertions, 0 deletions
diff --git a/sys/dev/vr/if_vr.c b/sys/dev/vr/if_vr.c
index eb986eedc901..d509b136df72 100644
--- a/sys/dev/vr/if_vr.c
+++ b/sys/dev/vr/if_vr.c
@@ -798,7 +798,9 @@ vr_detach(device_t dev)
/* These should only be active if attach succeeded */
if (device_is_attached(dev)) {
vr_stop(sc);
+ VR_UNLOCK(sc); /* XXX: Avoid recursive acquire. */
ether_ifdetach(ifp);
+ VR_LOCK(sc);
}
if (sc->vr_miibus)
device_delete_child(dev, sc->vr_miibus);
diff --git a/sys/pci/if_vr.c b/sys/pci/if_vr.c
index eb986eedc901..d509b136df72 100644
--- a/sys/pci/if_vr.c
+++ b/sys/pci/if_vr.c
@@ -798,7 +798,9 @@ vr_detach(device_t dev)
/* These should only be active if attach succeeded */
if (device_is_attached(dev)) {
vr_stop(sc);
+ VR_UNLOCK(sc); /* XXX: Avoid recursive acquire. */
ether_ifdetach(ifp);
+ VR_LOCK(sc);
}
if (sc->vr_miibus)
device_delete_child(dev, sc->vr_miibus);