Change the initial delay in wdwait to a DELAY macro call. It is really

too long, but does not impact performance very much when using the
NSECS_MULTI option.  This will help solve some mysterious IDE I/O
problems.
This commit is contained in:
John Dyson 1995-04-22 22:44:30 +00:00
parent 5b920a895d
commit 74d2d21c68
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=8005

View file

@ -34,7 +34,7 @@
* SUCH DAMAGE. * SUCH DAMAGE.
* *
* from: @(#)wd.c 7.2 (Berkeley) 5/9/91 * from: @(#)wd.c 7.2 (Berkeley) 5/9/91
* $Id: wd.c,v 1.72 1995/04/12 20:48:10 wollman Exp $ * $Id: wd.c,v 1.73 1995/04/14 22:31:58 phk Exp $
*/ */
/* TODO: /* TODO:
@ -1923,13 +1923,13 @@ wdwait(struct disk *du, u_char bits_wanted, int timeout)
wdc = du->dk_port; wdc = du->dk_port;
timeout += POLLING; timeout += POLLING;
/* dummy read for delay */ /*
/* * This delay is really too long, but does not impact the performance
* the reason that we are reading from an *unused* port, * as much when using the NSECS_MULTI option. Shorter delays have
* is that it might be *really* fast to read from the * caused I/O errors on some drives and system configs. This should
* wd port. * probably be fixed if we develop a better short term delay mechanism.
*/ */
(void) inb(0x84); DELAY(1);
do { do {
#ifdef WD_COUNT_RETRIES #ifdef WD_COUNT_RETRIES