Deadlock with ATA disk on FreeBSD 4.8 Stable

Martin Blapp mb at
Mon Apr 28 08:45:14 PDT 2003


> One thing that could explain this is that the disk stops working in the
> midst of a busmaster DMA transfer, that will effectively lockup the
> system in most cases. I'm suspecting bad HW here, as it makes no sense
> you can access the rest of the disk without problems.. If you can spare
> the data, I'd do a dd if=/dev/zero of=/dev/adN bs=1m and try to get the
> disk to remap all bad sectors...

We removed the disk and used another ata-controller. There it works.

ad1s1e: hard error reading fsbn 438711007 of 219355472-219355631 (ad1s1 bn
438711007; cn 27308 tn 126 sn 49) trying PIO mode
ad1: DMA problem fallback to PIO mode

but why does it stay at PIO mode ? Shouldn't the driver enable DMA again
after we got a block error anyway ?

Here are the settings from the controller where it crashes:

ATA channel 0:
    Master: acd0 <FX4830T/R02E> ATA/ATAPI rev 0
    Slave:       no device present
ATA channel 1:
    Master:  ad1 <ST3120020A/3.30> ATA/ATAPI rev 6
    Slave:       no device present

ad1 runs at DMA33

atapci0: <ServerWorks ROSB4 ATA33 controller> port 0xb800-0xb80f at device 15.1
on pci0
ata0: at 0x1f0 irq 14 on atapci0
ata1: at 0x170 irq 15 on atapci0


More information about the freebsd-stable mailing list