summaryrefslogtreecommitdiffstats
path: root/sys/dev/bge/if_bge.c
diff options
context:
space:
mode:
authoryongari <yongari@FreeBSD.org>2013-01-24 04:54:53 +0000
committeryongari <yongari@FreeBSD.org>2013-01-24 04:54:53 +0000
commit6563e85d8867406e28f9d35a257a3d1e20c8d0aa (patch)
treebbf88bb19f4b1f20c6dc59f87c3ef9832f045b3b /sys/dev/bge/if_bge.c
parentcaba48e7e72b82e8d54be2e55f5f0ed1862e0287 (diff)
downloadFreeBSD-src-6563e85d8867406e28f9d35a257a3d1e20c8d0aa.zip
FreeBSD-src-6563e85d8867406e28f9d35a257a3d1e20c8d0aa.tar.gz
bge_attach() can fail before attaching mii(4). So make sure to check
bge_miibus before detaching mii(4).
Diffstat (limited to 'sys/dev/bge/if_bge.c')
-rw-r--r--sys/dev/bge/if_bge.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/dev/bge/if_bge.c b/sys/dev/bge/if_bge.c
index d5dc6d8..33cf4cb 100644
--- a/sys/dev/bge/if_bge.c
+++ b/sys/dev/bge/if_bge.c
@@ -3899,9 +3899,9 @@ bge_detach(device_t dev)
if (sc->bge_tq)
taskqueue_drain(sc->bge_tq, &sc->bge_intr_task);
- if (sc->bge_flags & BGE_FLAG_TBI) {
+ if (sc->bge_flags & BGE_FLAG_TBI)
ifmedia_removeall(&sc->bge_ifmedia);
- } else {
+ else if (sc->bge_miibus != NULL) {
bus_generic_detach(dev);
device_delete_child(dev, sc->bge_miibus);
}
OpenPOWER on IntegriCloud