I said this already on Bean's RAID topic, but I think I just make now a new topic instead of messing him's up.
So here's again a patch which changes grub_error into grub_dprintf, it's the same reason as with these invalid BSD disklabels/partitions See [0] for a good reason. GRUB shouldn't fail to rescue mode, if an unsupport RAID (in this case 6) is used on disks which GRUB doestn't even need to access. Reporter has / and /boot on a raid1 and his raid6 is at the time of the report not even mounted. I wasn't that sure about the last case, I changed. I had this too with my raid 1 experiments, as I forgot to --zero-superblock the second disk. Normaly it sohuld never happen that you have more disks for an array as the super block says you have. [0] http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=494501 2008-08-11 Felix Zielcke <[EMAIL PROTECTED]> * disk/raid.c (grub_raid_scan_device): Do not abort on unsupported RAID levels or if something is wrong, use grub_dprintf to issue a warning.
Index: disk/raid.c =================================================================== --- disk/raid.c (Revision 1799) +++ disk/raid.c (Arbeitskopie) @@ -383,7 +383,7 @@ /* FIXME: Also support version 1.0. */ if (sb.major_version != 0 || sb.minor_version != 90) { - grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, + grub_dprintf ("raid", "Unsupported RAID version: %d.%d", sb.major_version, sb.minor_version); return 0; @@ -394,7 +394,7 @@ /* FIXME: Support all RAID levels. */ if (sb.level != 0 && sb.level != 1 && sb.level != 5) { - grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, + grub_dprintf ("raid", "Unsupported RAID level: %d", sb.level); return 0; @@ -403,7 +403,7 @@ /* FIXME: Support all layouts. */ if (sb.level == 5 && sb.layout != 2) { - grub_error (GRUB_ERR_NOT_IMPLEMENTED_YET, + grub_dprintf ("raid", "Unsupported RAID5 layout: %d", sb.layout); return 0; @@ -434,7 +434,7 @@ happen normally, but what is the sanest things to do in such a case? */ - grub_error (GRUB_ERR_BAD_NUMBER, + grub_dprintf ("raid", "array->nr_devs > array->total_devs (%d)?!?", array->total_devs);
_______________________________________________ Grub-devel mailing list Grub-devel@gnu.org http://lists.gnu.org/mailman/listinfo/grub-devel