The problem is that Promise raid BIOS stores it's metadata near the end of the drive, but only in a sector number that is evenly divisible by 63 (sectors/track). My WD 250GB drive (originally in a Dell computer) is the same exact size as yours but I reduced it in size using the hdparm -N host protected area function by 2 sectors, see the man page for hdparm to see how to do this:
# fdisk -l /dev/sdb
Disk /dev/sdb: 249.9 GB, 249999998976 bytes
255 heads, 63 sectors/track, 30394 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x3b0cc04a
Device Boot Start End Blocks Id System
/dev/sdb1 * 1 2550 20482843+ c W95 FAT32 (LBA)
/dev/sdb2 2551 2614 514080 83 Linux
/dev/sdb3 2615 7458 38909430 7 HPFS/NTFS
/dev/sdb4 7459 30393 184225387+ f W95 Ext'd (LBA)
/dev/sdb5 7459 7522 514048+ 82 Linux swap / Solaris
/dev/sdb6 7523 30393 183711276 83 Linux
# hdparm -N /dev/sdb
/dev/sdb:
max sectors = 488281248/488281250, HPA is enabled
---------[ Received Mail Content ]----------
Subject : Re: Not working on ATI SB750 as of debian's 1.0.0.rc15 (updated: raid1, 2.6.32, debian's 1.0.0.rc16)
Date : Sat, 9 Jan 2010 02:34:19 +0000 (GMT)
From : Ezequiel_Lara_Gómez <jisakiel@xxxxxxxx>
To : ataraid-list@xxxxxxxxxx
Gonna have another stab at this, as I would really like to have working multiOS raid. Doesn't work yet as of rc16 and 2.6.32.
The trouble is that metadata is only found in one of the drives, so raid0 can't be activated and raid1 appears as degraded, although in windows (obviously) it works fine, and the bios shows it as functional.
I believe it might be because of slightly different drive sizes, although I can't really confirm it as my two only identical drives are already in use in a different raid1.
In my tests:
sda is my main root drive, sdd is an usb drive, sdb is a western digital of 250G and sdc is a maxtor of 251G (as shown in the bios). Neither of gigabyte boundary options (on/off) make a difference, although in these tests it is off, which is not the default. And I get the same results with raid1 and raid0, although this test is with raid1.
# dmraid -ay -f pdc -vvv -d
NOTICE: checking format identifier pdc
WARN: locking /var/lock/dmraid/.lock
NOTICE: skipping removable device /dev/hda
NOTICE: skipping removable device /dev/hdb
NOTICE: /dev/sdd: pdc discovering
NOTICE: /dev/sdc: pdc discovering
NOTICE: /dev/sdc: pdc metadata discovered
NOTICE: /dev/sdb: pdc discovering
NOTICE: /dev/sda: pdc discovering
DEBUG: _find_set: searching pdc_dihbhdgahc
DEBUG: _find_set: not found pdc_dihbhdgahc
DEBUG: _find_set: searching pdc_dihbhdgahc
DEBUG: _find_set: not found pdc_dihbhdgahc
NOTICE: added /dev/sdc to RAID set "pdc_dihbhdgahc"
DEBUG: checking pdc device "/dev/sdc"
ERROR: pdc: wrong # of devices in RAID set "pdc_dihbhdgahc" [1/2] on /dev/sdc
DEBUG: set status of set "pdc_dihbhdgahc" to 4
DEBUG: checking pdc device "/dev/sdc"
ERROR: pdc: wrong # of devices in RAID set "pdc_dihbhdgahc" [1/2] on /dev/sdc
DEBUG: set status of set "pdc_dihbhdgahc" to 4
RAID set "pdc_dihbhdgahc" already active
INFO: Activating mirror raid set "pdc_dihbhdgahc"
NOTICE: discovering partitions on "pdc_dihbhdgahc"
NOTICE: /dev/mapper/pdc_dihbhdgahc: dos discovering
NOTICE: /dev/mapper/pdc_dihbhdgahc: dos metadata discovered
DEBUG: _find_set: searching pdc_dihbhdgahc1
DEBUG: _find_set: not found pdc_dihbhdgahc1
NOTICE: created partitioned RAID set(s) for /dev/mapper/pdc_dihbhdgahc
RAID set "pdc_dihbhdgahc1" already active
INFO: Activating partition raid set "pdc_dihbhdgahc1"
WARN: unlocking /var/lock/dmraid/.lock
DEBUG: freeing devices of RAID set "pdc_dihbhdgahc"
DEBUG: freeing device "pdc_dihbhdgahc", path "/dev/sdc"
DEBUG: freeing devices of RAID set "pdc_dihbhdgahc1"
DEBUG: freeing device "pdc_dihbhdgahc1", path "/dev/mapper/pdc_dihbhdgahc"
I can attach or upload the generated dmraid.pdc folder if anyone wants (don't really want to overload the archives). However it does only contain sdc.xxx files, and nothing about sdb. I can provide dd of the required sectors of the other drive as well (just tell me which ones are!).
Just in case I forced a synchronize with the raidxpert web interface from windows, which already completed, without any difference.
The geometry of the drives (which are slightly different, as the bigger one is older):
root@blackie:~# fdisk -l /dev/sdb
Disk /dev/sdb: 250.0 GB, 250000000000 bytes
255 heads, 63 sectors/track, 30394 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x85311ed9
Device Boot Start End Blocks Id System
/dev/sdb1 1 30273 243161088 7 HPFS/NTFS
root@blackie:~# fdisk -l /dev/sdc
Disk /dev/sdc: 251.0 GB, 251000193024 bytes
255 heads, 63 sectors/track, 30515 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x85311ed9
Device Boot Start End Blocks Id System
/dev/sdc1 1 30273 243161088 7 HPFS/NTFS
If anyone should be interested in making ataraid work in SB750 southbridge, just contact me and I will follow instructions for making the tests in the hardware. I have the two drives referred above available for this testing, and might perhaps get another 250G and an additional smaller one if required for any other raid types; so long, I am only trying raid0 and 1 with two of them. I will repeat the test ASAP with the *other* drive (which is exactly 250 IIRC).
Just in case it helps:
jisakiel@blackie:~$ uname -a
Linux blackie 2.6.32-trunk-amd64 #1 SMP Thu Jan 7 17:44:12 UTC 2010 x86_64 GNU/Linux
jisakiel@blackie:~$ apt-cache policy dmraid
dmraid:
Instalados: 1.0.0.rc16-3
Candidato: 1.0.0.rc16-3
Tabla de versión:
*** 1.0.0.rc16-3 0
990 http://ftp.de.debian.org testing/main Packages
500 http://ftp.de.debian.org unstable/main Packages
100 /var/lib/dpkg/status
1.0.0.rc14-7 0
500 http://ftp.de.debian.org stable/main Packages
Motherboard is an Asus M3A78-T with the latest (1701) bios; I can provide as well the raid bios version if needed. SB is the SB750.
Thanks for the attention and sorry for the long email; I would really like to troubleshoot this.
----- Mensaje original ----
> De: Ezequiel Lara Gómez
> Para: ataraid-list@xxxxxxxxxx
> Enviado: mar,17 marzo, 2009 17:58
> Asunto: Not working on ATI SB750 as of debian's 1.0.0.rc15
>
> I saw in this mailing list some patches related to dmraid working in SB600
> (https://www.redhat.com/archives/ataraid-list/2009-March/msg00005.html, and
> redhat's bug
> http://www.redhat.com/archives/ataraid-list/2008-March/msg00015.html ). Debian
> has this patches in experimental's version 1.0.0.rc15-3 in the file
> "09_promise-add-offsets.patch":
>
> -#define PDC_CONFIGOFFSETS 63,255,256,16,399,675,735,974,991
> +#define PDC_CONFIGOFFSETS 63,255,256,16,399,675,735,974,991,911,974,591
>
>
> However it still doesn't work on my Asus M3A78-T with SB750 and latest bios
> (0802).
>
> By the way, I noticed the raid manager, both the windows web-based and the BIOS
> one (duh, of course), allow you to create several raids on a couple of disks,
> and I recall having readed on this list that it -non-full-drive raids- wasn't
> supported as no promise controller was documented to support it yet... I could
> be wrong though.
>
>
> Right now I have three drives: One, a fast WD 150G drive, working standalone,
> and then two slightly different 250G drives (Maxtor and WD, one appears as being
> 251G). The array in bios is created with these two drives as one RAID1 (2x1)
> 200G in size, and then the remaining space as raid0 (~91G IIRC). dmraid -r -vvv
> -d only finds metadata in one of the drives, and only for the first array. I
> also tried in plain whole-disk raid1 and raid0 configuration and it still didn't
> find the metadata on both disks (with debian's version which has that patch
> preapplied!).
>
> I'm more than willing to help debugging / testing this, as I'd really like
> dmraid to work on this configuration (dmraid + IFS for using ext3 in windows =
> multibootheaven ;) ). I can provide dumps if wanted (tar-gzed of course ;) );
> drives are clean and I won't use them until I get this to work. If needed I'll
> give more precise info about my setup from windows / the bios.
>
>
>
> PS:
>
> jisakiel@blackie:~/src/dmraid/dmraid-1.0.0.rc15/debian/patches$ sudo dmraid -r
> -vvv -d
> WARN: locking /var/lock/dmraid/.lock
> NOTICE: skipping removable device /dev/hda
> NOTICE: skipping removable device /dev/hdb
> NOTICE: /dev/sdc: asr discovering
> NOTICE: /dev/sdc: ddf1 discovering
> NOTICE: /dev/sdc: hpt37x discovering
> NOTICE: /dev/sdc: hpt45x discovering
> NOTICE: /dev/sdc: isw discovering
> NOTICE: /dev/sdc: jmicron discovering
> NOTICE: /dev/sdc: lsi discovering
> NOTICE: /dev/sdc: nvidia discovering
> NOTICE: /dev/sdc: pdc discovering
> NOTICE: /dev/sdc: sil discovering
> NOTICE: /dev/sdc: via discovering
> NOTICE: /dev/sdb: asr discovering
> NOTICE: /dev/sdb: ddf1 discovering
> NOTICE: /dev/sdb: hpt37x discovering
> NOTICE: /dev/sdb: hpt45x discovering
> NOTICE: /dev/sdb: isw discovering
> NOTICE: /dev/sdb: jmicron discovering
> NOTICE: /dev/sdb: lsi discovering
> NOTICE: /dev/sdb: nvidia discovering
> NOTICE: /dev/sdb: pdc discovering
> NOTICE: /dev/sdb: pdc metadata discovered
> NOTICE: /dev/sdb: sil discovering
> NOTICE: /dev/sdb: via discovering
> NOTICE: /dev/sda: asr discovering
> NOTICE: /dev/sda: ddf1 discovering
> NOTICE: /dev/sda: hpt37x discovering
> NOTICE: /dev/sda: hpt45x discovering
> NOTICE: /dev/sda: isw discovering
> NOTICE: /dev/sda: jmicron discovering
> NOTICE: /dev/sda: lsi discovering
> NOTICE: /dev/sda: nvidia discovering
> NOTICE: /dev/sda: pdc discovering
> NOTICE: /dev/sda: sil discovering
> NOTICE: /dev/sda: via discovering
> INFO: RAID device discovered:
>
> /dev/sdb: pdc, "pdc_bcdgijjhcg", mirror, ok, 410156288 sectors, data@ 0
> WARN: unlocking /var/lock/dmraid/.lock
_______________________________________________
Ataraid-list mailing list
Ataraid-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/ataraid-list
_______________________________________________ Ataraid-list mailing list Ataraid-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/ataraid-list