I'm on gentoo ~amd64. genkernel-3.4.29 doesn't make me boot because it defaults to use: DMRAID_VER="1.0.0.rc16-3" When I boot (using dodmraid parameter as I always did) it tells me: ERROR: dos: partition address past end of RAID device In practice it tells me it knows about the first 3 partitions. But not the extended one: Volume0p5, that is my root! I found a bug of Arch Linux that maybe affects us, too. https://bugs.archlinux.org/task/15756 "I got my machine running again by downgrading dmraid to 1.0.0.rc14-4 (from March) and changing the naming scheme back to the old one for the partitions. So dmraid 1.0.0.rc15 has some sort of bug still." And rc16 seems to have the same bug. I'm going to test all DMRAID version we have on tree to find the exact version since the error appears.
Here it is. dmraid 1.0.0 rc14 # dmraid -tay isw_xxxxxxxxxx_Vol0: 0 1953536512 striped 2 256 /dev/sda 0 /dev/sdb 0 isw_xxxxxxxxxx_Vol01: 0 204800 linear /dev/mapper/isw_xxxxxxxxxx_Vol0 2048 isw_xxxxxxxxxx_Vol02: 0 204800 linear /dev/mapper/isw_xxxxxxxxxx_Vol0 206848 isw_xxxxxxxxxx_Vol03: 0 8388608 linear /dev/mapper/isw_xxxxxxxxxx_Vol0 411648 isw_xxxxxxxxxx_Vol05: 0 209715200 linear /dev/mapper/isw_xxxxxxxxxx_Vol0 8802304 isw_xxxxxxxxxx_Vol06: 0 209715200 linear /dev/mapper/isw_xxxxxxxxxx_Vol0 218519552 isw_xxxxxxxxxx_Vol07: 0 1525299712 linear /dev/mapper/isw_xxxxxxxxxx_Vol0 428236800 dmraid 1.0.0 rc15 # dmraid -tay ERROR: isw: Could not find disk /dev/sdb in the metadata ERROR: isw: Could not find disk /dev/sda in the metadata no raid disks dmraid 1.0.0 rc16 # dmraid -tay isw_xxxxxxxxxx_Vol0: 0 1953536000 striped 2 256 /dev/sda 0 /dev/sdb 0 ERROR: dos: partition address past end of RAID device isw_xxxxxxxxxx_Vol01: 0 204800 linear /dev/mapper/isw_xxxxxxxxxx_Vol0 2048 isw_xxxxxxxxxx_Vol02: 0 204800 linear /dev/mapper/isw_xxxxxxxxxx_Vol0 206848 isw_xxxxxxxxxx_Vol03: 0 8388608 linear /dev/mapper/isw_xxxxxxxxxx_Vol0 411648 I've also posted an upstream bug (it doesn't seem that fettouhi lastly sent it https://bbs.archlinux.org/viewtopic.php?id=77329 ) https://bugzilla.redhat.com/show_bug.cgi?id=812531
IIRC, genkernel still installs its own packaged version of dmraid and so the main in-tree ebuild doesn't have any effect on genkernel unless you modify genkernel.conf. I'm CC'ing genkernel as this seems to be your preferred method of using dmraid. (in the meantime, you can install dmraid-1.0.0.rc14 and change genkernel.conf to use it -- emerging dmraid will tell you how in the post-install message) Looking at the results of your tests, I think that the issue shown in rc16 with that "ERROR: dos: partition address past end of RAID device" is key. I believe that this is occurring within the code in format/partitions/dos.c which is assembling a number of the partitions found into the large "extended" group, and since something pushes the end of a partition past the end of the raid device, that whole group gets ignored as it cannot be completed. As to why this is happening, I am not sure. There WERE bugs fixed in rc15/rc16 relating to partition sizing, as there were times when dmraid was calculating the sizes wrong (on isw hardware, i believe); i'll look up the details. So it could be relating to that, or it could be that there is an issue with the dimensions listed in your partition tables.
You can also try to use mdadm instead. It has picked up support for some of dmraids former usecases (i.e. support for fakeraid metadata), is more up to date in genkernel, and is what is usually recommended for Intel isw/imsm. Works for me fine with ICH10R, which I configured with the imsm-orom, never been tuched by dmraid, and works very fine with mdadm in both Genkernel and OpenRC.
Ahh welcome, you've hit the bug I hit nearly 3 years ago and was met with zero to little attention. https://bugs.gentoo.org/552114 It's a bug debian has been patching around - you need these patches for larger fakeraid devices.