Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 22 Mar 1995 22:59:58 +1000
From:      Bruce Evans <bde@zeta.org.au>
To:        toor@jsdinc.root.com, zeta.org.au!bde@implode.root.com
Cc:        CVS-commiters@freefall.cdrom.com, cvs-sys@freefall.cdrom.com, davidg@freefall.cdrom.com
Subject:   Re: cvs commit: src/sys/i386/isa wd.c wdreg.h
Message-ID:  <199503221259.WAA14392@godzilla.zeta.org.au>

next in thread | raw e-mail | index | archive | help

>> I used a WD1007 for 2 years.  Who broke the support for it? :-).
>> 
>	It appears that it broke with the addition of the 32bit support.

I looked at this fairly carefully and didn't see any obvious problems.
EIDE drives return capability bits in `struct wdparams' for things
like this but ata-2 doesn't cover this and it's a good idea to test
the capabilities anyway.

>	Lots of time was wasted for other reasons too.  Reads were
>	significantly less efficient than they needed to be, for example,
>	going through the wdstart for *every* block also recalculating
>	the disk address unnecessarily!!!  Also, the multi-block support

This was on my todo list too.  I thought it didn't matter a lot because
486's can divide reasonably fast, and it's only part of the bloat in
wdstart().  wdstart() doesn't usually need to do much more than outsw()
for continuing writes and nothing for continuing reads.

>	speeds things up significantly on my machine (>15%).  In fact,
>	restructuring the delay loop in wdwait and doing multi-block transfers
>	made my ISA WD Caviars go from 1.6MB/sec to 2.3MB/sec!!!  If it appears

You said that some drives are slower with multi-block transfers.  I
tested mine under Linux (Linux has lots of ioctls to control the behaviour)
My drive is slow and multi-block mode doesn't make much difference.

Bruce



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