Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 15 Nov 1995 23:42:39 +1100
From:      Bruce Evans <bde@zeta.org.au>
To:        freebsd-current@FreeBSD.org, george@moa.cc.monash.edu.au
Subject:   Re: Problem with wd0
Message-ID:  <199511151242.XAA03378@godzilla.zeta.org.au>

next in thread | raw e-mail | index | archive | help
>On my machine the boot time probes show:

>> wdc0 at 0x1f0-0x1f7 irq 14 on isa
>> wdc0: unit 0 (wd0): <QUANTUM P80A 980-80-94xx>
>> wd0: 80MB (164050 sectors), 965 cyls, 10 heads, 17 S/T, 512 B/S

>The first time I try to use wd0 (eg, using dd if=/dev/wd0 of=/dev/null) I get a
>pause and then:

>> wd0: wdcontrol: wdcommand failed reading fsbn 0wd0: status ff<busy,rdy,wrtflt,seekdone,drq,ecc_cor,index,err> error 0

>There seems to be two problems here:

>1) Shouldn't this message be split over two lines?

This topic has a long history, like that of `echo -n' :-).  The message
was originally written all on one line, correctly formatted without the
`wd0' in the middle.  Some broken driver(s) neglected to print a newline
after calling diskerr().  This was "fixed" by always printing a newline
in diskerr().  Now the above messages was misformatted.  This was "fixed"
by adding the second `wd0'.  Then the 4.4lite version of ufs_disksubr.c
blew away the bogus changes to diskerr().  Everyone was tired of changes
in this area and/or the messages rarely gets printed now so no one
noticed the problem and it hasn't been fixed.

>and, more importantly,

>2) What is causing it?

>This machine is primarily an MS DOS machine; this drive is it's C:, and MS DOS 
>has no problems with it.  I boot FreeBSD diskless off another machine.  It's
>running -CURRENT (delta 1174) though I have had this problem ever since I
>started playing with -CURRENT about 2 months ago.

The driver tries to do a WDCC_RESTORE command early and this fails.  Perhaps
the BIOS doesn't initialize the drive for your diskless boot and the wd
driver doesn't completely initialize at first either.  After the failure,
the driver retries and/or resets the controller and/or drive and then
the WDCC_RESTORE command apparently works.  I think there is no problem
if this is the only error.

Bruce



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199511151242.XAA03378>