diff options
author | Niklas Hallqvist <niklas@cvs.openbsd.org> | 1999-01-19 01:11:26 +0000 |
---|---|---|
committer | Niklas Hallqvist <niklas@cvs.openbsd.org> | 1999-01-19 01:11:26 +0000 |
commit | d0e917bef2cc02dcafa2bcbee2fd248162dc9d10 (patch) | |
tree | 693e63d995528bf1a66dee5f1071279ac5d8900f /usr.sbin | |
parent | fe46565fb8bff53ebcafa4f9aca2a70eb5ca0032 (diff) |
Retry sane probe ordering, i.e. ordered like the attachments
found in the various config files.
Diffstat (limited to 'usr.sbin')
-rw-r--r-- | usr.sbin/config/pack.c | 13 | ||||
-rw-r--r-- | usr.sbin/config/sem.c | 3 |
2 files changed, 10 insertions, 6 deletions
diff --git a/usr.sbin/config/pack.c b/usr.sbin/config/pack.c index 98b05691962..8cc8659ff5a 100644 --- a/usr.sbin/config/pack.c +++ b/usr.sbin/config/pack.c @@ -1,4 +1,4 @@ -/* $OpenBSD: pack.c,v 1.8 1996/12/12 00:24:41 niklas Exp $ */ +/* $OpenBSD: pack.c,v 1.9 1999/01/19 01:11:25 niklas Exp $ */ /* $NetBSD: pack.c,v 1.5 1996/08/31 21:15:11 mycroft Exp $ */ /* @@ -166,19 +166,22 @@ void packdevi() { register struct devi *i, *l, *p; - register struct devbase *d; + register struct deva *d; register int j, m, n; packed = emalloc((ndevi + 1) * sizeof *packed); n = 0; - for (d = allbases; d != NULL; d = d->d_next) { + for (d = alldevas; d != NULL; d = d->d_next) { /* - * For each instance of each device, add or collapse + * For each instance of each attachment, add or collapse * all its aliases. */ - for (i = d->d_ihead; i != NULL; i = i->i_bsame) { + for (i = d->d_ihead; i != NULL; i = i->i_asame) { m = n; for (l = i; l != NULL; l = l->i_alias) { + /* Skip if we already handled this one. */ + if (l->i_cfindex >= 0) + continue; l->i_pvlen = 0; l->i_pvoff = -1; l->i_locoff = -1; diff --git a/usr.sbin/config/sem.c b/usr.sbin/config/sem.c index 1864b18ec45..fbfde4c07a6 100644 --- a/usr.sbin/config/sem.c +++ b/usr.sbin/config/sem.c @@ -1,4 +1,4 @@ -/* $OpenBSD: sem.c,v 1.12 1997/11/13 08:21:56 deraadt Exp $ */ +/* $OpenBSD: sem.c,v 1.13 1999/01/19 01:11:24 niklas Exp $ */ /* $NetBSD: sem.c,v 1.10 1996/11/11 23:40:11 gwr Exp $ */ /* @@ -728,6 +728,7 @@ newdevi(name, unit, d) i->i_atdeva = NULL; i->i_locs = NULL; i->i_cfflags = 0; + i->i_cfindex = -1; i->i_lineno = currentline(); if (unit >= d->d_umax) d->d_umax = unit + 1; |