I have a Promise Ultra100 ATA controller with two Seagate drives (ST3320620A) connected to (one per channel). The idea was to build a fault tolerant software Raid 1 system with those two disks. But when booting the system it logs lots of repeated errors of the same kind (in /var/log/boot.msg):
> <3>ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x2
> <3>ata2.00: BMDMA stat 0x4
> <3>ata2.00: cmd ca/00:08:9f:56:a3/00:00:00:00:00/e2 tag 0 dma 4096 out
> <4> res 51/84:08:9f:56:a3/00:00:00:00:00/e2 Emask
> 0x10 (ATA bus error)
> <3>ata2.00: status: { DRDY ERR }
> <3>ata2.00: error: { ICRC ABRT }
> <6>ata2: soft resetting link
> <6>ata2.00: configured for UDMA/33
> <6>ata2: EH complete
> <3>ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x2
> <3>ata2.00: BMDMA stat 0x4
> <3>ata2.00: cmd ca/00:08:9f:56:a3/00:00:00:00:00/e2 tag 0 dma 4096 out
> <4> res 51/84:08:9f:56:a3/00:00:00:00:00/e2 Emask
> 0x10 (ATA bus error)
> <3>ata2.00: status: { DRDY ERR }
> <3>ata2.00: error: { ICRC ABRT }
> <6>ata2: soft resetting link
> <6>ata2.00: configured for UDMA/33
> <6>ata2: EH complete
> <5>sd 1:0:0:0: [sdb] 625142448 512-byte hardware sectors (320073 MB)
> <3>ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x2
> <3>ata2.00: BMDMA stat 0x4
> <3>ata2.00: cmd ca/00:08:9f:56:a3/00:00:00:00:00/e2 tag 0 dma 4096 out
> <4> res 51/84:08:9f:56:a3/00:00:00:00:00/e2 Emask
> 0x10 (ATA bus error)
> <3>ata2.00: status: { DRDY ERR }
> <3>ata2.00: error: { ICRC ABRT }
> <6>ata2: soft resetting link
> <6>ata2.00: configured for UDMA/33
> <6>ata2: EH complete
> <5>sd 1:0:0:0: [sdb] Write Protect is off <7>sd 1:0:0:0:
> [sdb] Mode Sense: 00 3a 00 00
> <4>ata2.00: limiting speed to UDMA/25:PIO4
> <3>ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x2
> <3>ata2.00: BMDMA stat 0x4
> <3>ata2.00: cmd ca/00:08:9f:56:a3/00:00:00:00:00/e2 tag 0 dma 4096 out
> <4> res 51/84:08:9f:56:a3/00:00:00:00:00/e2 Emask
> 0x10 (ATA bus error)
> <3>ata2.00: status: { DRDY ERR }
> <3>ata2.00: error: { ICRC ABRT }
> <6>ata2: soft resetting link
> <6>ata2.00: configured for UDMA/25
> <6>ata2: EH complete
> <3>ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x2
> <3>ata2.00: BMDMA stat 0x4
> <3>ata2.00: cmd ca/00:08:9f:56:a3/00:00:00:00:00/e2 tag 0 dma 4096 out
> <4> res 51/84:08:9f:56:a3/00:00:00:00:00/e2 Emask
> 0x10 (ATA bus error)
> <3>ata2.00: status: { DRDY ERR }
> <3>ata2.00: error: { ICRC ABRT }
> <6>ata2: soft resetting link
> <6>ata2.00: configured for UDMA/25
> <6>ata2: EH complete
> <5>sd 1:0:0:0: [sdb] Write cache: enabled, read cache:
> enabled, doesn't support DPO or FUA
> <4>ata2.00: limiting speed to PIO4
> <3>ata2.00: exception Emask 0x0 SAct 0x0 SErr 0x0 action 0x2
> <3>ata2.00: BMDMA stat 0x4
> <3>ata2.00: cmd ca/00:08:9f:56:a3/00:00:00:00:00/e2 tag 0 dma 4096 out
> <4> res 51/84:08:9f:56:a3/00:00:00:00:00/e2 Emask
> 0x10 (ATA bus error)
> <3>ata2.00: status: { DRDY ERR }
> <3>ata2.00: error: { ICRC ABRT }
> <6>ata2: soft resetting link
> <6>ata2.00: configured for PIO4
> <6>sd 1:0:0:0: [sdb] Result: hostbyte=DID_OK
> driverbyte=DRIVER_SENSE,SUGGEST_OK
> <6>sd 1:0:0:0: [sdb] Sense Key : Aborted Command [current]
> [descriptor] <4>Descriptor sense data with sense descriptors (in hex):
> <6> 72 0b 47 00 00 00 00 0c 00 0a 80 00 00 00 00 00
> <6> 02 a3 56 9f
> <6>sd 1:0:0:0: [sdb] Add. Sense: Scsi parity error
> <3>end_request: I/O error, dev sdb, sector 44258975
> <6>ata2: EH complete
> <3>end_request: I/O error, dev sdb, sector 44258975
As far as I understand these error messages, the ATA bus detects CRC errors which causes the driver to reset the bus, to retry the transfer and finally to give up and slow down transfer speed spep by step. In consequence the system takes quite some minutes to boot and also delays and slows down later on as well. Not to mention the constantly broken mirrors for my md0 to md2 drives…
With my first tests I did use the appropriate cables (Ultra DMA 80-conductor IDE/ATA with only two connectors) so the ontroller tried to operate in Ultra DMA Mode 5 (100MB/s) which failed with virtually identical error logs.
On a trial base I switched cables and used standard 40-conductor cables in order to restrict transfer speed to max. mode 2, but in vain.
My system is a DELL PowerEdge 1300 with two PIII @ 500MHz and 512MB Ram. Both, the DELL and the Promise have the latest firmware.
Google returned quite a few posts from people with similar problems, but no way to fix tha problem so far.