VIA RAID geometry and other problems
marcin at studio4plus.com
Wed Nov 9 22:56:05 GMT 2005
I've recently arranged two of my disks into a RAID0 array using my
on-board VIA SATA controller, installed XP on it and prepared first
partition for /usr to be disklabeled and used later.
Here's the partition table as I remember it :) :
primary ar0s1 FreeBSD unused (20GB)
primary ar0s2 NTFS Windows XP (20GB)
logical ar0s5 NTFS some data (60GB)
logical ar0s6(?) FAT32 some data (32GB)
the rest was unused.
The first thing I've noticed was the wrong size of the corresponding
ar0 device [dmesg output]:
atapci0: <VIA 6420 SATA150 controller> port
irq 20 at device 15.0 on pci0
ad0: 29314MB <IBM DTLA-307030 TX4OA60A> at ata0-master UDMA100
ad4: 76319MB <WDC WD800JD-00HKA0 13.03G13> at ata2-master SATA150
ad6: 76319MB <WDC WD800JD-00HKA0 13.03G13> at ata3-master SATA150
ar0: 76319MB <VIA Tech V-RAID RAID0 (stripe 16 KB)> status: READY
ar0: disk0 READY using ad4 at ata2-master
ar0: disk1 READY using ad6 at ata3-master
Geometry shown in sysinstall is the same for ar0 as for ad0. I don't
know if this is a problem or not. The size of ar0 which should be the
sum of ad4 and ad6, however, is a problem when using disk utilities.
The other interesting thing is status returned by atacontrol:
simon# atacontrol status ar0
ar0: ATA RAID0 stripesize=32 subdisks: ad4 ad6 status: READY
The stripe size was set to 16KB while creating array in BIOS. Does
atacontrol show size in KB or some other unit (blocks?). I guess it's
all right, since I can read data written with Windows driver.
I've used Windows' disk management to partition the array and there were
no problems except for one: the FAT32 slice was not present in FreeBSD.
data on ar0s5 was accessible, I think it extended past 76319MB, which is
the size that ar0 reports.
Real problems started after I disklabeled ar0s1 for /usr and additional
swap. They both work as expected, but the whole extended partition has
disappeared (I used sysinstall to do the disklabel, not the first time
and I think I did it right).
I've tried creating extended partition again (in windows) in hope that
logical drives and data are still there, but this didn't help.
Then I tried gpart, it complained about a problem with extended
partition at sector where it should begin. It showed the first two
slices where they are.
Then I tried creating extended and primary partition with sysinstall,
linux-fdisk and at some point Windows stopped booting (everything I
tried to create was behind the second slice, but maybe I did something
Fortunately the contents of these lost slices is not very important (it
shouldn't take more than a day to recreate), so I don't need to fix it.
Does anybody know why this may have happened and what can I do to have
ar0 report proper size and access all slices?
Could this be an issue with FreeBSD ata raid driver (I found posts by
people using VIA 6420 and RAID1, does anyone use it for RAID0?) ?
Thanks for reading this long message ;)
More information about the freebsd-questions