diff options
Diffstat (limited to 'sys/dev/bhnd/siba/siba.c')
-rw-r--r-- | sys/dev/bhnd/siba/siba.c | 10 |
1 files changed, 2 insertions, 8 deletions
diff --git a/sys/dev/bhnd/siba/siba.c b/sys/dev/bhnd/siba/siba.c index 2688f3415aa5..a8e83f843506 100644 --- a/sys/dev/bhnd/siba/siba.c +++ b/sys/dev/bhnd/siba/siba.c @@ -85,7 +85,6 @@ siba_attach(device_t dev) /* Enumerate children */ if ((error = siba_add_children(dev))) { - device_delete_children(dev); SIBA_LOCK_DESTROY(sc); return (error); } @@ -1318,7 +1317,7 @@ siba_add_children(device_t dev) goto failed; /* Add the child device */ - child = BUS_ADD_CHILD(dev, 0, NULL, -1); + child = BUS_ADD_CHILD(dev, 0, NULL, DEVICE_UNIT_ANY); if (child == NULL) { error = ENXIO; goto failed; @@ -1373,12 +1372,7 @@ siba_add_children(device_t dev) return (0); failed: - for (u_int i = 0; i < cid->ncores; i++) { - if (children[i] == NULL) - continue; - - device_delete_child(dev, children[i]); - } + device_delete_children(dev); free(cores, M_BHND); free(children, M_BHND); |