Sil3124 wedging when booted off of

I'm trying to get a file server up and running. It's using a MSI K7D Master (AMD MPX chipset) with tow MP1700 CPUs, 512 MB (ECC) RAM, and a few other bits. Using Solaris 10u3 (x86), installing from the 5 CDs.

For storage, I'm using a Sil3124 with 4 500GB Samsung SATA drives (HD501LJ). When I install Solaris on a seperate IDE drive that uses the motherboard IDE port, everything works great - I can set up a zfs pool, create a raidz filesystem, read/write at high speeds, etc etc. However, I don't have room for the extra IDE drive in the case, so I want the system to boot off the SATA drives. And this is where the problem is.

If I tell Solaris to install onto one of the SATA drives, the install is very, very slow. I'm not sure exactly how long the first CD takes - I left it for three hours and it had done about 20%, so I left it overnight and it had finished by the morning. The problem is that the sil3124 wedges - for some reason, one of the requests stalls for a minute or two (the time seems somewhat random), and since the SATA driver doesn't support NCQ yet, this jams up the whole queue. This causes particular problems on CD2, where the swap (which is on the SATA drive) also gets blocked, so the system hangs for a couple minutes.

This wedging is channel-specific. I can be DDing from/to the other disks without a problem when one of the channels is wedged. Looking in iostat shows that one of the channels has 1 active request (and usually several queued up as well) with the rest all idle.

Any suggestions/hints?

edit: Just thought of something - when starting up the first install CD, the problem is obviously still there. However, the system is not booting off the SATA drives in this case, and should perform as if it was booted off the IDE drive. The plot thickens ...

[1834 byte] By [embossa] at [2007-11-27 3:31:57]
«« Daniel
»» dataTable
# 1

Just a quick update ... I did some more testing, and it seems that even when booting off the non-SATA drive, it's still broken. It just shows up a lot more often when swap, libraries, etc all sit on the SATA drives.

I've also tried this on a completely different machine - basically just a Soltek Sl-75DRV5 with a single MP1700, 512 MB RAM, and a Addonics ADS3GX4R5 (Sil3124 based as well, in a vanilla PCI slot). The end result was exactly the same - requets would get stuck until they timed out.

So, is the Sil driver actually broken when it comes to the Sil3124, or have I just been really unlucky? I'd really like to get this working, but at the moment it's completely unusable.

embossa at 2007-7-12 8:34:57 > top of Java-index,Solaris Operating System,Solaris Essentials - General Technical Questions...