Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 29 Jan 2003 10:31:50 -0800
From:      David Schultz <dschultz@uclink.Berkeley.EDU>
To:        jjramsey@pobox.com
Cc:        freebsd-bugs@FreeBSD.ORG
Subject:   Re: Revisiting the semirandom bug/issue in FreeBSD's ATA querying
Message-ID:  <20030129183150.GB3139@HAL9000.homeunix.com>
In-Reply-To: <20030129142553.22666.qmail@web10708.mail.yahoo.com>
References:  <20030129015852.GB1989@HAL9000.homeunix.com> <20030129142553.22666.qmail@web10708.mail.yahoo.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Thus spake James J. Ramsey <jjramsey_6x9eq42@yahoo.com>:
> --- David Schultz <dschultz@uclink.Berkeley.EDU>
> wrote:
> > That's absolutely bizarre.  So the problem happens
> > *only* on
> > FreeBSD, and only when you use bad cables *and* have
> > two devices
> > on the controller.  Well, thanks for being patient
> > about it.

So it sounds like the problem is specific to the CDROM drive and
ATA66 cables.  But even if the drive doesn't support ATA66, that
shouldn't screw up the probe...

> I'm not so sure the cables are even bad. I've tried
> two different ATA66 cables and can reproduce the
> problem using either one of them. I doubt that *both*
> of them are bad.
> 
> On the bright side, the problem seems to be narrowed
> down some. :)
> 
> Sidenote: After actually *seeing* an ATA33 cable, I
> can tell that both the cables I had been using (before
> doing my most recent test) were for ATA66. I hadn't
> realized before that the difference between an ATA33
> and an ATA66 cable was so obvious (I found out that
> ATA33 cable wires are fatter.)

The ATA66 cables have 80 conductors instead of 40, but still only
40 pins.  There is a slight electrical difference that each device
uses to detect (sometimes incorrectly) whether the cables are
ATA66 or not.  The ATA spec requires that for this to work, it is
necessary to first probe the slave, and then the master, which the
FreeBSD driver does.  No delay is supposed to be required between
probing the slave and probing the master, other than waiting for
the command to complete, but the Linux driver has one anyway.  I
don't understand ATA very well, but perhaps that has something to
do with the problem.

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message




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