names.
Reported by: David Pravec.
+2011-01-04 Vladimir Serbinenko <phcoder@gmail.com>
+
+ * grub-core/kern/emu/getroot.c (grub_util_get_grub_dev): Check md/%s
+ names.
+ Reported by: David Pravec.
+
2011-01-04 Vladimir Serbinenko <phcoder@gmail.com>
* grub-core/disk/i386/pc/biosdisk.c (GRUB_MOD_INIT): Workaround buggy
#ifdef __linux__
{
char *mdadm_name = get_mdadm_name (os_dev);
+ struct stat st;
if (mdadm_name)
{
- free (grub_dev);
- grub_dev = xasprintf ("md/%s", mdadm_name);
+ char *newname;
+ newname = xasprintf ("/dev/md/%s", mdadm_name);
+ if (stat (newname, &st) == 0)
+ {
+ free (grub_dev);
+ grub_dev = xasprintf ("md/%s", mdadm_name);
+ }
+ free (newname);
free (mdadm_name);
}
}