Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 3 Apr 2004 12:49:15 -0500 (EST)
From:      "R. David Murray" <rdmurray@bitdance.com>
To:        Tim Robbins <tjr@freebsd.org>
Cc:        freebsd-current@freebsd.org
Subject:   Re: 5.2.1 hangs on boot where 5.1 does not (ATA issue)
Message-ID:  <20040403122057.A22070@twirl.bitdance.com>
In-Reply-To: <20040330140215.GA50962@cat.robbins.dropbear.id.au>
References:  <20040329180323.M43054@twirl.bitdance.com> <20040330140215.GA50962@cat.robbins.dropbear.id.au>

next in thread | previous in thread | raw e-mail | index | archive | help
On Wed, 31 Mar 2004, Tim Robbins wrote:
> Check your cables and jumpers. I've only ever seen this error when they
> were incorrect.

Well, you were right, but it isn't the whole story, unless there's
something I'm not understanding about how the hardware is supposed
to work (which is very probable!)

Recap: computer has ad0, ad2, and acd0, with ad2 and acd0 on the
same controller as master and slave respectively.  My system was
working with the 5.1 kernel, though it gave some error messages on
boot, but hung with the 5.2 kernel when it tried to access ad2.

I try to avoid fooling with the hardware as much as possible, so
my knowledge is limited.  I just took a crash course as I checked
over all the jumper settings.  Indeed, it turns out that the ad2 disk
drive was set to "cable select", something that I've never encountered
before (last time I installed a hard drive the only options were
master and slave).  Changing that to master changed the symptoms,
but I'm still in a situation where I can boot with 5.1 but not
(at least not completely) wit 5.2.

Here are the dmesg captures:

5.1
--------------------------------------------------------------------
ad0: 38166MB <ST340810A> [77545/16/63] at ata0-master UDMA100
ad2: 57241MB <Maxtor 36147H8> [116301/16/63] at ata1-master UDMA100
acd0: DVD-ROM <DVDROM 12X> at ata1-slave PIO4
ad2: UDMA ICRC error cmd=read fsbn 0 retrying
ad2: UDMA ICRC error cmd=read fsbn 0 retrying
ad2: UDMA ICRC error cmd=read fsbn 0 retrying
ad2: UDMA ICRC error cmd=read fsbn 0 falling back to PIO mode
--------------------------------------------------------------------

5.2
--------------------------------------------------------------------
GEOM: create disk ad0 dp=0xc2de6360
ad0: 38166MB <ST340810A> [77545/16/63] at ata0-master UDMA100
GEOM: create disk ad2 dp=0xc2de6160
ad2: 57241MB <Maxtor 36147H8> [116301/16/63] at ata1-master UDMA100
acd0: DVDROM <DVDROM 12X> at ata1-slave PIO4
ad2: WARNING - READ_DMA UDMA ICRC error (retrying request) LBA=0
ad2: WARNING - READ_DMA UDMA ICRC error (retrying request) LBA=0
ad2: FAILURE - READ_DMA status=51<READY,DSC,ERROR> error=84<ICRC,ABORTED> LBA=0
ad2: WARNING - READ_DMA UDMA ICRC error (retrying request) LBA=0
ad2: WARNING - READ_DMA UDMA ICRC error (retrying request) LBA=0
ad2: FAILURE - READ_DMA status=51<READY,DSC,ERROR> error=84<ICRC,ABORTED> LBA=0
--------------------------------------------------------------------


When booting 5.1, the system continues with the boot process.  When
booting 5.2, I am told that the disk check for ad2 failed, and
am left in single user mode (I'll get you the exact error message
if needed, but I forgot to write it down).

So, it looks to me like there's still a problem with the 5.2 kernel
and this drive.  I've checked the DVD, and it is correctly set to
slave.  The UDMA failures probably result from the fact that it
looks like I don't have a UDMA cable (I'm going to get one and see),
but unless I'm missunderstanding something shouldn't the OS fall
back to PIO mode in that case?  (Of course, I also understood from
my reading that the hardware could *detect* a UDMA cable, so I'm
wondering what's up with that, too).

So, in summary, is there anything other than trying a new for-sure-UDMA
cable that I should do?  And am I right that there is a problem
with the 5.2 kernel not falling back to PIO in this case?

--David



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