ICH7 SATA RAID (LSI MegaRAID)

Toomas Aas toomas.aas at raad.tartu.ee
Wed Nov 22 15:00:07 PST 2006


Hello!

I've bought a small server with Intel SE7230NH1 motherboard, which 
incorporates the ICH7 SATA RAID controller. Using the LSI BIOS utility, 
I created a RAID1 array of two disks and installed FreeBSD 6.2-RC1 
(amd64) on it.

atapci1: <Intel ICH7 SATA300 controller> port 
0x30c8-0x30cf,0x30e4-0x30e7,0x30c0-0x30c7,0x30e0-0x30e3,0x30a0-0x30af 
mem 0x88200000-0x882003ff irq 19 at device 31.2 on pci0
atapci1: AHCI Version 01.10 controller with 4 ports detected
ata2: <ATA channel 0> on atapci1
ata3: <ATA channel 1> on atapci1
ata4: <ATA channel 2> on atapci1
ata5: <ATA channel 3> on atapci1
ad4: 476940MB <Seagate ST3500630AS 3.AAE> at ata2-master SATA300
ad6: 476940MB <Seagate ST3500630AS 3.AAE> at ata3-master SATA300
ar0: 476772MB <LSILogic v3 MegaRAID RAID1> status: READY
ar0: disk0 READY (master) using ad4 at ata2-master
ar0: disk1 READY (mirror) using ad6 at ata3-master

This server has a hot-swap drive cage that allows you to power off 
individual drives. I simulated a drive failure by powering off one of 
the drives. This resulted in console message:

ar0: warning: mirror protection lost. RAID1 array in DEGRADED mode.
ar0: writing of LSILogic v3 MegaRAID metadata is NOT supported yet.
subdisk6: detached
ad6: detached

OK, the disk went away. This is witnessed by atacontrol:
# atacontrol status ar0
ar0: ATA RAID1 subdisks: ad4 DOWN status DEGRADED

Now, I power the disk on again. This brings on the following console 
message.

ad6: 476940MB <Seagate ST3500630AS 3.AAE> at ata3-master SATA300

The array status is still degraded, as shown by atacontrol:
#atacontrol status ar0
ar0: ATA RAID1 subdisks: ad4 ad6 status: DEGRADED

OK, so I think I need to rebuild the array, but this doesn't succeed:
#atacontrol rebuild ar0
IOCATARAIDREBUILD: Input/Output error.

When I reboot the server, it comes back up with the array at READY 
status immediately. Maybe this is because I have "Auto rebuild" set to 
"Yes" in BIOS. But is there any way to recover from this kind of failure 
without rebooting? Are my problems caused merely by the fact that 
"writing of LSILogic v3 MegaRAID metadata is NOT supported yet", or am I 
doing something wrong? Or maybe this is the problem that exists only in 
amd64 version and not in i386?

Thanks in advance,
--
Toomas





More information about the freebsd-questions mailing list