kern/74070: DMA problwms with large disks and HPT370
tuure at laurinolli.net
Thu Nov 18 04:50:35 PST 2004
>Synopsis: DMA problwms with large disks and HPT370
>Arrival-Date: Thu Nov 18 12:50:34 GMT 2004
>Originator: Tuure Laurinolli
>Release: FreeBSD 5.3-RC1 i386
FreeBSD vortex.home.lan 5.3-RC1 FreeBSD 5.3-RC1 #6: Thu Oct 21 19:26:48 EEST 2004 root at vortex.home.lan:/usr/obj/usr/src/sys/VORTEX i386
Abit VP6 motherboard with latest BIOS, ie. HPT370 RAID controller
two Seagate HDDs, model <ST3200822A/3.01>, ie. 200GB models
I get DMA errors when trying to access sector 268435455, or the 2^28th sector from the beginning of the disk.
I guess this is a controller problem, however I don't have any real proof, because this is my only available controller that supports disks as large as those. I will try to find another controller to test with. I think it would be very unlikely for two new disks to both have the same problem on the same sector.
With a single disk, the errors of dd if=/dev/ad6 of=/tmp/test6 are:
ad6: TIMEOUT - READ_DMA retrying (2 retries left) LBA=268435455
ad6: TIMEOUT - READ_DMA retrying (1 retries left) LBA=268435455
ad6: FAILURE - READ_DMA timed out
With a HPT-native RAID1 setup the results are worse. I don't have exact error messages, but there are DMA timeouts on both disks (ad4 and ad6), that result in tearing the array (ar0) apart, and causing a kernel panic (maybe because the array is the root disk too).
[14:30:23][tazle at vortex][/var/run]% sudo dd if=/dev/ad6 of=/tmp/test6 skip=268435450 count=10
dd: /dev/ad6: Input/output error
5+0 records in
5+0 records out
2560 bytes transferred in 15.645115 secs (164 bytes/sec)
The system console gives the errors given in full desription.
More information about the freebsd-bugs