Fixed the search for free wd drives. The search was terminated

prematurely when there was a hole (for a cdrom or an unused
interface) in the sequence of wd drives.  This caused non-free
wd units to be probed as atapi drives.  There was no problem
provided the atapi probe failed correctly.
This commit is contained in:
Bruce Evans 1998-02-01 19:10:04 +00:00
parent 76d0502a56
commit b163ce2f65

View File

@ -34,7 +34,7 @@
* SUCH DAMAGE.
*
* from: @(#)wd.c 7.2 (Berkeley) 5/9/91
* $Id: wd.c,v 1.148 1998/01/24 02:01:13 dyson Exp $
* $Id: wd.c,v 1.149 1998/01/24 02:54:27 eivind Exp $
*/
/* TODO:
@ -547,8 +547,9 @@ wdattach(struct isa_device *dvp)
* Probe all free IDE units, searching for ATAPI drives.
*/
for (unit=0; unit<2; ++unit) {
for (lunit=0; lunit<NWD && wddrives[lunit]; ++lunit)
if (wddrives[lunit]->dk_ctrlr == dvp->id_unit &&
for (lunit=0; lunit<NWD; ++lunit)
if (wddrives[lunit] &&
wddrives[lunit]->dk_ctrlr == dvp->id_unit &&
wddrives[lunit]->dk_unit == unit)
goto next;
#ifdef CMD640