Copyright 2009-2012 by djg. All Rights Reserved.

Wonky Gibbon Ramblings


Getting a SiliconImage Sil3114 SATA RAID card to work in Windows 7

Posted on October 29, 2010 by danny

I recently had the experience of moving a pair of RAID1 storage disks from one server to another. It was not without difficulty.
Both server’s had the OS on a third non RAIDed drive, so i didn’t have to worry about being able to boot from them (thank god!)

The server they came from, an old MSI AMD motherboard had a Promise RAID controller built in. The Gigabyte board I was moving to did not, so I had to add an additional RAID controller on a PCI card.
The board chosen used a chipset from SilconImage – the Sil3114. This is an inexpensive card offering RAID0,1,5,10 & JBOD.

The card as delivered plugged into an empty PCI slot easy enough. However the motherboard recognised this only some of the time. (This was subsequently either resolved by a BIOS update to the card – more on this later – or pushing down hard on the card to ensure it was fully in – not sure which).

The Sil3114 card can be used in one of two configurations. As a RAID controller for up to 4 SATA drives. This requires a SATA RAID bios to be installed on the card (the default) and some SATARAID5 manager software to be installed in Windows.
OR – it can be used as a straight disk controller for up to 4 SATA drives (no RAID) – this is called “SATA Link” and requires SATA Link software in Windows. You can also install a SATA Link “base” BIOS to the card as well, instead of the RAID one, but since the SATARAID BIOS has a pass thru mode which allows the use of drives in a non RAID configuration, it makes you wonder why you’d bother.

The job then was to plug the drives in, set them up as a RAID group without losing the data already on them and then get them visible and useable in Windows.

After plugging the drives in, I went into the Silicon Image SATA RAID BIOS utility. Here I was able to create a RAID1 group containing the two drives. I allowed it to re-mirror the data from one drive to the other as part of this. The mirroring process took several hours for my Samsung Spinpoint 500GB drives.

After booting into Windows, Windows 7 automatically downloaded a bunch of driver software which it seemed to think would work. It also added an item to the Windows Control Panel called “Silicon Logic SATA RAID”. Despite clicking on this item many times – it never did anything.
In addition to this you need to install the SATARAID5 manager software which allows you to configure the disks in windows. This can be downloaded from the SiliconImage website here:
http://www.siliconimage.com/support/searchresults.aspx?pid=28&cat=3
Make sure you have at least version 1.5.20.3 of this.

These downloads inexplicably include an old copy of the Java virtual machine runtime environment. Ironically this doesn’t actually work with the SATARAID5 manager software it comes with. Genius! Although it will allow you to view the status of your disks – it won’t allow you to actually do anything with them, all the menu items just do nothing (I subsequently managed to run the manager in a console mode and found that all the menu items were throwing exceptions – ie: broken).
However if you install the latest version of the Java runtime from Sun (available here) – the manager software does work properly.

So now I was able to examine my disks using the SATARAID5 manager. They were marked as a Legacy RAID Group and painted red. In the Windows “Disk Management” window (right click on “Computer” in Windows Explorer, select “Manage” and then clicking “Disk Storage”) they were not visible at all.

So – problem! My disks are there, presumably with data and I can’t read them. And what the hell is a legacy RAID group?

After much reading of the siliconimage website, I downloaded updated versions of the Sil3114 BIOS
Specifically BIOS version: 5.4.0.3 available from here.
The combination of BIOS 5.4.0.3 and SATARAID5 Manager 1.5.20.3 was the one I settled on that finally worked.

The BIOS can be updated by opening Windows “Device Manager”, finding the Sil3114 under “Storage Controlers”, right clicking and selecting “Properties”. One of the tabs has a button for updating the BIOS here – it’s straightforward.

One option offered by the SATARAID5 manager software was to “Convert the Legacy RAID group” to a “New RAID group” – I wasn’t quite sure what this would do but as far as I could tell a Legacy group can be read natively by the card, whereas the New group uses the manager software / drivers instead.
Hardware vs Software RAID then? Not sure. But I’m pretty certain that a New RAID group would be much tougher to setup as a boot drive. So legacy would seem better – if only it could be made to be seen in the Windows “Disk Management” window.

So – I took one of the two drives out and let the system boot. Still couldn’t see it.
Deleted the RAID group in the BIOS and let the system boot. Now we could see the drive. SATARAID5 recognised it as a normal non-RAID disk, went into PASSTHRU mode and allowed it’s use. (It is this PASSTHRU mode that makes the alternative SATA Link BIOS software pretty pointless in my view as it acheives the same result),
NB: Whilst deleting a RAID group only seems to delete the RAID metadata from the hard drives with the Sil3114, leaving the data intact, the same might not be the case with other RAID controllers. Beware!
I now reinstalled the other disk, delete the RAID group from that as well and let the system boot.
The system could now see both drives in PASSTHRU mode, the partitions were intact, but the “Disk Management” window informed me that it couldn’t mount the second drive as it had the same identifier as the first. Which of course it would – so that seemed reasonable.

SO – rebooted again – went back into the RAID BIOS and recreated the RAID group, I didn’t bother to make it copy the data again as it was clearly going to be the same, and then let the system boot.

This time success. The drives were still recognised as a Legacy RAID group, but this time were painted green in the SATARAID5 manager software and were visible and useable in Windows 7. A check in “Disk Management” showed that a single drive was being recognised (ie: the two disks are successfully operating as a RAID1 mirror pair).

I have no idea why they were painted red the first time and green the second, other than that maybe the RAID BIOS was very old when I created the first pair and the metadata was a bit rubbish.

Anyway – all well in the end.

So yes – it is possible to get the Sil3114 to drive a pair of RAID1 disks in Windows 7. (Phew!)

12 to “Getting a SiliconImage Sil3114 SATA RAID card to work in Windows 7”

  1. Matt says:

    Been trying to get this working as well, but I find with an updated JRE, the Manager app gives me an error, “Could not acquire application lock! Please press the button to exit.”. If I uninstall the newer JRE and leave the old version installed, it will run, but as you’ve found, it doesn’t appear to be able to DO anything.

    Any idea on this? What version of the JRE are you running, exactly?

    Thanks!

    BTW, I was able to configure a RAID5 volume using the bootup config screen… but as you found, I can’t do anything else with it using the Manager app. Would be nice if I could use the RAID5 option in Windows Disk Mangement with this!

  2. Matt says:

    Nevermind, think I figured it out :) I had to set one of the JRE executables to “Run as an administrator”, then it launched fine. I elevated jp2launcher.exe, javaw.exe and javaws.exe – not sure which one it was, but that appears to have done the trick.

    To do this, right-click the file, go to Properties, go to the Compatibility tab, then check the “Run this program as an administrator” box.

  3. danny says:

    Dammit – you’re absolutely right! Can’t believe I forgot to mention the “Run as Administrator” thing – that’s key to getting it to work.
    Thanks for also pointing out that you can do it permanently on the JRE executables as well, I hadn’t thought of that (I was just right clicking the shortcut and selecting “run as administrator”. Your way solves the irritating boot up error message as well so is a winner. Nice one :)

    Thanks!

  4. danny says:

    Elevating javaw.exe to “Run as Administrator” seems to be the one that does the trick.

  5. danny says:

    As an postscript. I rebuilt my mediacentre from scratch last weekend (installed an SSD as boot drive) – with the SiliconImage card in the machine from the beginning. Windows installed it seamlessly and recognised the card without the need for any of the crap above (with the possible exception of the BIOS update).

  6. danny says:

    In further news – a week after the rebuild, one of the two RAID’ed drives failed with the click of death. The interesting part was that it prevented Windows 7 from booting until the failed drive was unplugged.
    It would have to be said that this Silicon Image chipset really is quite basic – it does the job – but you have to stay on top of it. It’s not what you’d call “consumer”.

  7. Dan Mackin says:

    Hey guys… just wanted to say that I wish I had come across this a LOT earlier when I was building my RAID5 array with this same onboard chip. I eventually figured out what the issue was (like you!) but it took me almost two weeks to do so!

    That being said, I’d definitely like to echo what danny is saying above. One of my RAID5 drives (I have 3x 2TB WD Green drives in the array) failed today and the system will not boot… haven’t been home to check it out but I’m seriously hoping (and I feel fairly confident that this is the case) that I can just unplug the drive and my “Reduced” array will still be fine. I’d hate to lose 3TB of data! Yeah, I know, backup backup backup.

    Luckily those WD drives come with a three year warranty so I’ve got the new one on the way. Can’t wait for the rbuild process to take days! :)

  8. Dan Mackin says:

    Ugh. Fail… I think I may have lost my 3TB of data. :(

  9. danny says:

    Ah NO! Mate – I’m really sorry. RAID5 being striped with parity is that bit more complex – should have survived really though. I still use the SiliconImage in a very simple RAID1 configuration – not sure how much I trust it to do something more tricky – it’s a cheap chipset!

  10. Dan Mackin says:

    Yeah… I think I may have learned my lesson. Linux Software RAID from now on. ;) I’m going to try my hand using RAID Reconstructor V4.25 to see if I can get at it using a LiveCD with that software. I’ll post back with my results if they’re worth sharing! :)

  11. danny says:

    Very best of luck!

  12. danny says:

    Having just done a rebuild of my system from scratch (caused by a failure of the boot SSD), I note that Windows Update now provides a driver for the Sil3114 automatically. So as long as it isn’t your boot partition, Windows will now identify the chipset and mount the drives once the update process has worked it’s magic. Which is a lot cleaner than the crazy stuff we all had to do above.



Leave a Reply




↑ Top