After marathon 24 hour debugging through gdb, I have found two issues and a fix for them: 1. If the serial number contains whitespace and is longer than 16 characters, the raid set is not detected. So, some disks like seagate's, which have 12 blanks and then the serial number are detected as being not on the ICH raid controller. That raid set is not detected. 2. If you have multiple raid sets, only of them will have its partitions listed in /dev/mapper. In this case, if you have e.g. 2 raid0 sets created, only one of them will have its partitions listed in /dev/mapper. The other one will be just listed as the disk with just one entry. Its a case of 'continue' vs. 'return'. Have a look at the patch. It should go to upstream most likely. But I will appreciate if it goes in 'r1' release because boot is broken on dmraid at this time with ICH10.
Created attachment 195787 [details, diff] Fix missing Intel Software raid partitions 1. Remove whitespace from serial numbers. 2. Continue onto all raid sets instead of returning after processing the first.
metedata.c change took me 20 hrs to figure...:D A classic fallout of recursive functions. Very hard to catch such bugs!
Thanks for all of your work! I'm in the process of evaluating a number of patches used by Ubuntu (some of which also fix these issues). I will merge this patch in with those if the changes aren't already covered, and try to get an updated ebuild into portage ASAP.
(In reply to comment #3) > Thanks for all of your work! > > I'm in the process of evaluating a number of patches used by Ubuntu (some of > which also fix these issues). I will merge this patch in with those if the > changes aren't already covered, and try to get an updated ebuild into portage > ASAP. > There was one patch which handled blanks in the ID but that patch was badly written and the function needed to be called from multiple places. The patch I provide nips the bug in the bud and is much more concise.
(In reply to comment #3) > Thanks for all of your work! > > I'm in the process of evaluating a number of patches used by Ubuntu (some of > which also fix these issues). I will merge this patch in with those if the > changes aren't already covered, and try to get an updated ebuild into portage > ASAP. > Ian, any updates on this? Its been a while...:)
It has been a while. I'm working on it but my progress is slow due to the lack of a machine for me to test things on... (the only test machine i have is using an old promise tx2000, and that machine is in use most days) I'll apply this patch, and see if I can get a proper fix for bug 275566 , and update portage today or tomorrow.
Created attachment 203501 [details] patch removing 'p' from partition names this one fixes bug 275566
Created attachment 203502 [details] isw patch from devsk Same as the first patch, just renamed
Created attachment 203504 [details] ebuild applying attachment 203501 [details] and attachment 203502 [details] ebuild applying attachment 203501 [details] and attachment 203502 [details]
Created attachment 203505 [details] More patches from ubuntu This file contains a number of patches that ubuntu is using, many of which seem to relate to isw issues. Since I don't have the hardware to test, could someone else take a look at these and see if any of them should be integrated?
Please test the new version (sys-fs/dmraid-1.0.0_rc16), it seems to have nearly all changes and fixes applied. I hope that it will be hitting portage within a few days. See bug #285241 for more info and comments.
rc16 is broken. Upstream ignored one patch...and I had to find it the hard way....Again! ...:-( Please include the attached patch in your next release. Without it, only one RAID is listed and the rest are ignored.
Created attachment 211502 [details, diff] Return all sets, don't just return from the first one This is on top rc16, so should apply cleanly.
quoting ian: _AxS_> Tommy[D]_: guess what -- bug 275451 was fixed a long time ago (that's what dmraid-1.0.0_rc16-r1 did). Could you mark it resolved/fixed for me? => resolved, fixed