Odd problem with a NetCell SyncRAID SR3000 SATA RAID

From: Rink Springer <rink_at_FreeBSD.org>
Date: Tue, 5 Dec 2006 12:38:56 +0100
Hi Soren, current_at_,

Recently, I've acquired a NetCell SyncRAID SR3000 3 poort PCI RAID
controller. These are typical gamer/multimedia RAID-cards, which I
intend to use for my colocated box (performance is not very important,
but drive failures are :-)

Anyway, these are supposed to be supported by any generic ATA driver, as
they should advertise themselves as standard IDE controllers. FreeBSD
6.2-PRERELEASE of a week ago detects it as follows:

atapci0: <GENERIC ATA controller> port
0xbc00-0xbc07,0xb880-0xb883,0xb800-0xb807,0xb480-0xb483,0xb400-0xb40f irq 18 at device 6.0 on pci2
atapci0: Reserved 0x10 bytes for rid 0x20 type 4 at 0xb400
atapci0: [MPSAFE]
ata2: <ATA channel 0> on atapci0
atapci0: Reserved 0x8 bytes for rid 0x10 type 4 at 0xbc00
atapci0: Reserved 0x4 bytes for rid 0x14 type 4 at 0xb880
ata2: reset tp1 mask=03 ostat0=52 ostat1=00
ata2: stat0=0x52 err=0x01 lsb=0x00 msb=0x00
ata2: stat1=0x00 err=0x00 lsb=0x00 msb=0x00
ata2: reset tp2 stat0=52 stat1=00 devices=0x1<ATA_MASTER>
ata2: [MPSAFE]
ata3: <ATA channel 1> on atapci0
atapci0: Reserved 0x8 bytes for rid 0x18 type 4 at 0xb800
atapci0: Reserved 0x4 bytes for rid 0x1c type 4 at 0xb480
ata3: reset tp1 mask=03 ostat0=00 ostat1=00
ata3: stat0=0x51 err=0x04 lsb=0x00 msb=0x00
ata3: stat1=0x00 err=0x00 lsb=0x00 msb=0x00
ata3: reset tp2 stat0=51 stat1=00 devices=0x0
ata3: [MPSAFE]
ata2-master: pio=PIO4 wdma=WDMA1 udma=UNSUPPORTED cable=40 wire
ata2: reiniting channel ..
ata2: reset tp1 mask=03 ostat0=5a ostat1=08
ata2: stat0=0x52 err=0x01 lsb=0x00 msb=0x00
ata2: stat1=0x00 err=0x00 lsb=0x00 msb=0x00
ata2: reset tp2 stat0=52 stat1=00 devices=0x1<ATA_MASTER>
ata2: reinit done ..
ad4: FAILURE - SETFEATURES SET TRANSFER MODE timed out
ad4: 740173MB <ZZ ZZ ZZ ZZ ZZ ZZ ZZ ZZ ZZ ZZ ZZFFZZ16> at ata2-master WDMA1
ad4: 1515875360 sectors [1052691C/90H/16S] 16 sectors/interrupt 1 depth queue

However, ad4 is a RAID1 of 2x 160GB SATA disks! After some debugging and
tracing, it looks as if the response given to the IDENTIFY command is
garbled.

Reading/writing to ad4 works though, with dd(1) performing up to
60MB/sec, which makes me doubt it actually uses WDMA1.

Looking at the Linux patchset for this card makes it seems that it
requires DMA to be forced on and will reject any request without DMA.
This appears to be true, since setting hw.ata.ata_dma=0 results in being
unable to read from the device and being subjected to timeouts...

However, NetBSD 3.1/i386 appears to detect the disk alright:

pciide0 at pci2 dev 6 fuction 0
pciide0: vendor 0x169c product 0x44 (rev. 0x00)
pciide0: bus-mster DMA support present, but unused (no driver support)
pciide0: primary channel wired to native-PCI mode
pciide0: using irq 10 for native-PCI interrupt
atabus0 at pciide0 channel 0
pciide0: secondary channel wired to native-PCI mode
atabus1 at pciide0 channel 1
wd0 at atabus0 drive 0: <NetCell SyncRAID(TM) SR5000 R1-2>
wd0: drive supports 128-sector PIO transfers, LBA48 addressing
wd0: 152GB, 317632  cyl, 6 head, 63 sec, 512 bytes/sect x 320173056 sectors
wd0: drive supports PIO mode 4, Ultra-DMA mode 7

Reading is not a problem either, even though the performance is abymal
(1.4MB/sec...)

Any ideas how to solve this?

Thanks!

-- 
Rink P.W. Springer                                - http://rink.nu
"It's you isn't it? THE BASTARD OPERATOR FROM HELL!"
"In the flesh, on the phone and in your account..."       - BOFH #3

Received on Tue Dec 05 2006 - 10:38:21 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:03 UTC