Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F145718172
D47961.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
11 KB
Referenced Files
None
Subscribers
None
D47961.diff
View Options
diff --git a/sys/arm/allwinner/if_emac.c b/sys/arm/allwinner/if_emac.c
--- a/sys/arm/allwinner/if_emac.c
+++ b/sys/arm/allwinner/if_emac.c
@@ -811,10 +811,7 @@
bus_teardown_intr(sc->emac_dev, sc->emac_irq,
sc->emac_intrhand);
- if (sc->emac_miibus != NULL) {
- device_delete_child(sc->emac_dev, sc->emac_miibus);
- bus_generic_detach(sc->emac_dev);
- }
+ bus_generic_detach(sc->emac_dev);
if (sc->emac_clk != NULL)
clk_disable(sc->emac_clk);
diff --git a/sys/dev/ae/if_ae.c b/sys/dev/ae/if_ae.c
--- a/sys/dev/ae/if_ae.c
+++ b/sys/dev/ae/if_ae.c
@@ -761,10 +761,6 @@
taskqueue_free(sc->tq);
sc->tq = NULL;
}
- if (sc->miibus != NULL) {
- device_delete_child(dev, sc->miibus);
- sc->miibus = NULL;
- }
bus_generic_detach(sc->dev);
ae_dma_free(sc);
if (sc->intrhand != NULL) {
diff --git a/sys/dev/age/if_age.c b/sys/dev/age/if_age.c
--- a/sys/dev/age/if_age.c
+++ b/sys/dev/age/if_age.c
@@ -686,10 +686,6 @@
sc->age_tq = NULL;
}
- if (sc->age_miibus != NULL) {
- device_delete_child(dev, sc->age_miibus);
- sc->age_miibus = NULL;
- }
bus_generic_detach(dev);
age_dma_free(sc);
diff --git a/sys/dev/alc/if_alc.c b/sys/dev/alc/if_alc.c
--- a/sys/dev/alc/if_alc.c
+++ b/sys/dev/alc/if_alc.c
@@ -1699,10 +1699,6 @@
sc->alc_tq = NULL;
}
- if (sc->alc_miibus != NULL) {
- device_delete_child(dev, sc->alc_miibus);
- sc->alc_miibus = NULL;
- }
bus_generic_detach(dev);
alc_dma_free(sc);
diff --git a/sys/dev/ale/if_ale.c b/sys/dev/ale/if_ale.c
--- a/sys/dev/ale/if_ale.c
+++ b/sys/dev/ale/if_ale.c
@@ -711,10 +711,6 @@
sc->ale_tq = NULL;
}
- if (sc->ale_miibus != NULL) {
- device_delete_child(dev, sc->ale_miibus);
- sc->ale_miibus = NULL;
- }
bus_generic_detach(dev);
ale_dma_free(sc);
diff --git a/sys/dev/dc/if_dc.c b/sys/dev/dc/if_dc.c
--- a/sys/dev/dc/if_dc.c
+++ b/sys/dev/dc/if_dc.c
@@ -2539,8 +2539,6 @@
callout_drain(&sc->dc_wdog_ch);
ether_ifdetach(ifp);
}
- if (sc->dc_miibus)
- device_delete_child(dev, sc->dc_miibus);
bus_generic_detach(dev);
if (sc->dc_intrhand)
diff --git a/sys/dev/dwc/if_dwc.c b/sys/dev/dwc/if_dwc.c
--- a/sys/dev/dwc/if_dwc.c
+++ b/sys/dev/dwc/if_dwc.c
@@ -656,10 +656,6 @@
ether_ifdetach(sc->ifp);
}
- if (sc->miibus != NULL) {
- device_delete_child(dev, sc->miibus);
- sc->miibus = NULL;
- }
bus_generic_detach(dev);
/* Free DMA descriptors */
diff --git a/sys/dev/eqos/if_eqos.c b/sys/dev/eqos/if_eqos.c
--- a/sys/dev/eqos/if_eqos.c
+++ b/sys/dev/eqos/if_eqos.c
@@ -1216,8 +1216,6 @@
ether_ifdetach(sc->ifp);
}
- if (sc->miibus)
- device_delete_child(dev, sc->miibus);
bus_generic_detach(dev);
if (sc->irq_handle)
diff --git a/sys/dev/et/if_et.c b/sys/dev/et/if_et.c
--- a/sys/dev/et/if_et.c
+++ b/sys/dev/et/if_et.c
@@ -370,8 +370,6 @@
callout_drain(&sc->sc_tick);
}
- if (sc->sc_miibus != NULL)
- device_delete_child(dev, sc->sc_miibus);
bus_generic_detach(dev);
if (sc->sc_irq_handle != NULL)
diff --git a/sys/dev/fxp/if_fxp.c b/sys/dev/fxp/if_fxp.c
--- a/sys/dev/fxp/if_fxp.c
+++ b/sys/dev/fxp/if_fxp.c
@@ -933,8 +933,6 @@
FXP_LOCK_ASSERT(sc, MA_NOTOWNED);
KASSERT(sc->ih == NULL,
("fxp_release() called with intr handle still active"));
- if (sc->miibus)
- device_delete_child(sc->dev, sc->miibus);
bus_generic_detach(sc->dev);
ifmedia_removeall(&sc->sc_media);
if (sc->fxp_desc.cbl_list) {
diff --git a/sys/dev/ips/ips.c b/sys/dev/ips/ips.c
--- a/sys/dev/ips/ips.c
+++ b/sys/dev/ips/ips.c
@@ -279,17 +279,7 @@
static int ips_diskdev_free(ips_softc_t *sc)
{
- int i;
- int error = 0;
- for(i = 0; i < IPS_MAX_NUM_DRIVES; i++){
- if(sc->diskdev[i]) {
- error = device_delete_child(sc->dev, sc->diskdev[i]);
- if(error)
- return error;
- }
- }
- bus_generic_detach(sc->dev);
- return 0;
+ return (bus_generic_detach(sc->dev));
}
/* ips_timeout is periodically called to make sure no commands sent
diff --git a/sys/dev/jme/if_jme.c b/sys/dev/jme/if_jme.c
--- a/sys/dev/jme/if_jme.c
+++ b/sys/dev/jme/if_jme.c
@@ -928,10 +928,6 @@
sc->jme_tq = NULL;
}
- if (sc->jme_miibus != NULL) {
- device_delete_child(dev, sc->jme_miibus);
- sc->jme_miibus = NULL;
- }
bus_generic_detach(dev);
jme_dma_free(sc);
diff --git a/sys/dev/msk/if_msk.c b/sys/dev/msk/if_msk.c
--- a/sys/dev/msk/if_msk.c
+++ b/sys/dev/msk/if_msk.c
@@ -2020,17 +2020,6 @@
MSK_IF_LOCK(sc_if);
}
- /*
- * We're generally called from mskc_detach() which is using
- * device_delete_child() to get to here. It's already trashed
- * miibus for us, so don't do it here or we'll panic.
- *
- * if (sc_if->msk_miibus != NULL) {
- * device_delete_child(dev, sc_if->msk_miibus);
- * sc_if->msk_miibus = NULL;
- * }
- */
-
msk_rx_dma_jfree(sc_if);
msk_txrx_dma_free(sc_if);
bus_generic_detach(dev);
@@ -2058,15 +2047,7 @@
sc = device_get_softc(dev);
KASSERT(mtx_initialized(&sc->msk_mtx), ("msk mutex not initialized"));
- if (device_is_alive(dev)) {
- if (sc->msk_devs[MSK_PORT_A] != NULL) {
- device_delete_child(dev, sc->msk_devs[MSK_PORT_A]);
- }
- if (sc->msk_devs[MSK_PORT_B] != NULL) {
- device_delete_child(dev, sc->msk_devs[MSK_PORT_B]);
- }
- bus_generic_detach(dev);
- }
+ bus_generic_detach(dev);
/* Disable all interrupts. */
CSR_WRITE_4(sc, B0_IMSK, 0);
diff --git a/sys/dev/nfe/if_nfe.c b/sys/dev/nfe/if_nfe.c
--- a/sys/dev/nfe/if_nfe.c
+++ b/sys/dev/nfe/if_nfe.c
@@ -711,8 +711,6 @@
nfe_set_macaddr(sc, eaddr);
if_free(ifp);
}
- if (sc->nfe_miibus)
- device_delete_child(dev, sc->nfe_miibus);
bus_generic_detach(dev);
if (sc->nfe_tq != NULL) {
taskqueue_drain(sc->nfe_tq, &sc->nfe_int_task);
diff --git a/sys/dev/nge/if_nge.c b/sys/dev/nge/if_nge.c
--- a/sys/dev/nge/if_nge.c
+++ b/sys/dev/nge/if_nge.c
@@ -999,10 +999,6 @@
ether_ifdetach(ifp);
}
- if (sc->nge_miibus != NULL) {
- device_delete_child(dev, sc->nge_miibus);
- sc->nge_miibus = NULL;
- }
bus_generic_detach(dev);
if (sc->nge_intrhand != NULL)
bus_teardown_intr(dev, sc->nge_irq, sc->nge_intrhand);
diff --git a/sys/dev/pccbb/pccbb.c b/sys/dev/pccbb/pccbb.c
--- a/sys/dev/pccbb/pccbb.c
+++ b/sys/dev/pccbb/pccbb.c
@@ -275,42 +275,12 @@
cbb_detach(device_t brdev)
{
struct cbb_softc *sc = device_get_softc(brdev);
- device_t *devlist;
- int tmp, tries, error, numdevs;
+ int error;
- /*
- * Before we delete the children (which we have to do because
- * attach doesn't check for children busses correctly), we have
- * to detach the children. Even if we didn't need to delete the
- * children, we have to detach them.
- */
error = bus_generic_detach(brdev);
if (error != 0)
return (error);
- /*
- * Since the attach routine doesn't search for children before it
- * attaches them to this device, we must delete them here in order
- * for the kldload/unload case to work. If we failed to do that, then
- * we'd get duplicate devices when cbb.ko was reloaded.
- */
- tries = 10;
- do {
- error = device_get_children(brdev, &devlist, &numdevs);
- if (error == 0)
- break;
- /*
- * Try hard to cope with low memory.
- */
- if (error == ENOMEM) {
- pause("cbbnomem", 1);
- continue;
- }
- } while (tries-- > 0);
- for (tmp = 0; tmp < numdevs; tmp++)
- device_delete_child(brdev, devlist[tmp]);
- free(devlist, M_TEMP);
-
/* Turn off the interrupts */
cbb_set(sc, CBB_SOCKET_MASK, 0);
diff --git a/sys/dev/re/if_re.c b/sys/dev/re/if_re.c
--- a/sys/dev/re/if_re.c
+++ b/sys/dev/re/if_re.c
@@ -1803,8 +1803,6 @@
if_setflagbits(ifp, 0, IFF_UP);
ether_ifdetach(ifp);
}
- if (sc->rl_miibus)
- device_delete_child(dev, sc->rl_miibus);
bus_generic_detach(dev);
/*
diff --git a/sys/dev/rl/if_rl.c b/sys/dev/rl/if_rl.c
--- a/sys/dev/rl/if_rl.c
+++ b/sys/dev/rl/if_rl.c
@@ -882,8 +882,6 @@
#if 0
sc->suspended = 1;
#endif
- if (sc->rl_miibus)
- device_delete_child(dev, sc->rl_miibus);
bus_generic_detach(dev);
if (sc->rl_intrhand[0])
diff --git a/sys/dev/sge/if_sge.c b/sys/dev/sge/if_sge.c
--- a/sys/dev/sge/if_sge.c
+++ b/sys/dev/sge/if_sge.c
@@ -675,8 +675,6 @@
SGE_UNLOCK(sc);
callout_drain(&sc->sge_stat_ch);
}
- if (sc->sge_miibus)
- device_delete_child(dev, sc->sge_miibus);
bus_generic_detach(dev);
if (sc->sge_intrhand)
diff --git a/sys/dev/sis/if_sis.c b/sys/dev/sis/if_sis.c
--- a/sys/dev/sis/if_sis.c
+++ b/sys/dev/sis/if_sis.c
@@ -1146,8 +1146,6 @@
callout_drain(&sc->sis_stat_ch);
ether_ifdetach(ifp);
}
- if (sc->sis_miibus)
- device_delete_child(dev, sc->sis_miibus);
bus_generic_detach(dev);
if (sc->sis_intrhand)
diff --git a/sys/dev/sk/if_sk.c b/sys/dev/sk/if_sk.c
--- a/sys/dev/sk/if_sk.c
+++ b/sys/dev/sk/if_sk.c
@@ -1771,15 +1771,6 @@
ether_ifdetach(ifp);
SK_IF_LOCK(sc_if);
}
- /*
- * We're generally called from skc_detach() which is using
- * device_delete_child() to get to here. It's already trashed
- * miibus for us, so don't do it here or we'll panic.
- */
- /*
- if (sc_if->sk_miibus != NULL)
- device_delete_child(dev, sc_if->sk_miibus);
- */
bus_generic_detach(dev);
sk_dma_jumbo_free(sc_if);
sk_dma_free(sc_if);
@@ -1798,15 +1789,7 @@
sc = device_get_softc(dev);
KASSERT(mtx_initialized(&sc->sk_mtx), ("sk mutex not initialized"));
- if (device_is_alive(dev)) {
- if (sc->sk_devs[SK_PORT_A] != NULL) {
- device_delete_child(dev, sc->sk_devs[SK_PORT_A]);
- }
- if (sc->sk_devs[SK_PORT_B] != NULL) {
- device_delete_child(dev, sc->sk_devs[SK_PORT_B]);
- }
- bus_generic_detach(dev);
- }
+ bus_generic_detach(dev);
if (sc->sk_intrhand)
bus_teardown_intr(dev, sc->sk_res[1], sc->sk_intrhand);
diff --git a/sys/dev/smc/if_smc.c b/sys/dev/smc/if_smc.c
--- a/sys/dev/smc/if_smc.c
+++ b/sys/dev/smc/if_smc.c
@@ -450,10 +450,7 @@
if_free(sc->smc_ifp);
}
- if (sc->smc_miibus != NULL) {
- device_delete_child(sc->smc_dev, sc->smc_miibus);
- bus_generic_detach(sc->smc_dev);
- }
+ bus_generic_detach(sc->smc_dev);
if (sc->smc_reg != NULL) {
type = SYS_RES_IOPORT;
diff --git a/sys/dev/ste/if_ste.c b/sys/dev/ste/if_ste.c
--- a/sys/dev/ste/if_ste.c
+++ b/sys/dev/ste/if_ste.c
@@ -1074,8 +1074,6 @@
STE_UNLOCK(sc);
callout_drain(&sc->ste_callout);
}
- if (sc->ste_miibus)
- device_delete_child(dev, sc->ste_miibus);
bus_generic_detach(dev);
if (sc->ste_intrhand)
diff --git a/sys/dev/stge/if_stge.c b/sys/dev/stge/if_stge.c
--- a/sys/dev/stge/if_stge.c
+++ b/sys/dev/stge/if_stge.c
@@ -672,10 +672,6 @@
ether_ifdetach(ifp);
}
- if (sc->sc_miibus != NULL) {
- device_delete_child(dev, sc->sc_miibus);
- sc->sc_miibus = NULL;
- }
bus_generic_detach(dev);
stge_dma_free(sc);
diff --git a/sys/dev/vge/if_vge.c b/sys/dev/vge/if_vge.c
--- a/sys/dev/vge/if_vge.c
+++ b/sys/dev/vge/if_vge.c
@@ -1177,8 +1177,6 @@
VGE_UNLOCK(sc);
callout_drain(&sc->vge_watchdog);
}
- if (sc->vge_miibus)
- device_delete_child(dev, sc->vge_miibus);
bus_generic_detach(dev);
if (sc->vge_intrhand)
diff --git a/sys/dev/vr/if_vr.c b/sys/dev/vr/if_vr.c
--- a/sys/dev/vr/if_vr.c
+++ b/sys/dev/vr/if_vr.c
@@ -838,8 +838,6 @@
taskqueue_drain(taskqueue_fast, &sc->vr_inttask);
ether_ifdetach(ifp);
}
- if (sc->vr_miibus)
- device_delete_child(dev, sc->vr_miibus);
bus_generic_detach(dev);
if (sc->vr_intrhand)
diff --git a/sys/dev/vte/if_vte.c b/sys/dev/vte/if_vte.c
--- a/sys/dev/vte/if_vte.c
+++ b/sys/dev/vte/if_vte.c
@@ -506,10 +506,6 @@
ether_ifdetach(ifp);
}
- if (sc->vte_miibus != NULL) {
- device_delete_child(dev, sc->vte_miibus);
- sc->vte_miibus = NULL;
- }
bus_generic_detach(dev);
if (sc->vte_intrhand != NULL) {
diff --git a/sys/dev/xl/if_xl.c b/sys/dev/xl/if_xl.c
--- a/sys/dev/xl/if_xl.c
+++ b/sys/dev/xl/if_xl.c
@@ -1572,8 +1572,6 @@
callout_drain(&sc->xl_tick_callout);
ether_ifdetach(ifp);
}
- if (sc->xl_miibus)
- device_delete_child(dev, sc->xl_miibus);
bus_generic_detach(dev);
ifmedia_removeall(&sc->ifmedia);
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Tue, Feb 24, 12:50 PM (9 h, 6 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
28973871
Default Alt Text
D47961.diff (11 KB)
Attached To
Mode
D47961: Remove now-redundant calls to device_delete_child
Attached
Detach File
Event Timeline
Log In to Comment