hard disk I/O error fixed only by hdparm -W0 - any clues?

Stuart Levy slevy at ncsa.uiuc.edu
Sat Oct 1 23:03:26 UTC 2005


VJ <vijay.s.gill at gmail.com> wrote:
> > Hi,
> >     I have a seagate hard disk with 8Mb cache. I get hard disk sector
> > I/O errors but those are easily fixed by using hdparm -W0 on the disk.
> > Running smart tools does not give any error. Is it because linux
> > kernel cannot cope with this cache or what? This disk works perfectly
> > under windoes XP though (I removed Fedora and installed XP).

Is it a SATA drive?  And is your motherboard's controller a Silicon Image
one (uses "sata_sil" driver under Linux)?   If so, I've seen that
problem too on some of our systems, and read about it elsewhere --
not sure where to point the finger, but it seems that
the Seagate SATA drives don't implement the protocol the way that the
Silicon Image controllers want, so you get spurious I/O errors.
(That is, they're real as seen from the Linux point of view, but don't
indicate bad spots on the disk, or failure of the drive electronics, etc.)

Haven't heard where the incompatibility lies, but "hdparm -W0" disables
write caching on the drive -- I bet that reduces performance a good deal,
so not the most desirable way to work around the problem.

Better workaround: other manufacturers' drives work fine, so you
might be able (... might have been able?) to return your Seagate
drive and get a similar one, e.g. from Western Digital.   That's
what we did.  I couldn't even *install* FC2 on our si-image-equipped
systems with a Seagate drive, nor with its replacement -- the installer
would detect an I/O error after copying a few tens of MB, and the
driver would lock up.  But WD drives have worked flawlessly.
And dozens of Seagate drives are working well for us on other
SATA controllers.




More information about the fedora-list mailing list