[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] Linux I2O devices
From: |
Robert Millan |
Subject: |
Re: [PATCH] Linux I2O devices |
Date: |
Sun, 17 Sep 2006 23:25:58 +0200 |
User-agent: |
Mutt/1.5.13 (2006-08-11) |
I overlooked that biosdisk.c seems to be doing more specific checks on the
pathname now.
if (have_devfs () && strcmp (real_dev + len - 5, "/disc") == 0)
{
p = real_dev + len - 4;
format = "part%d";
}
else if ((strncmp (real_dev + 5, "hd", 2) == 0
|| strncmp (real_dev + 5, "sd", 2) == 0)
&& real_dev[7] >= 'a' && real_dev[7] <= 'z')
{
p = real_dev + 8;
format = "%d";
}
else if (strncmp (real_dev + 5, "rd/c", 4) == 0)
{
p = strchr (real_dev + 9, 'd');
if (! p)
return 0;
p++;
while (*p && isdigit (*p))
p++;
format = "p%d";
}
else
{
free (real_dev);
return 0;
}
For I2O we have /dev/i2o/hd[a-z][0-9]. There's also a big family of device
sets using this scheme (/dev/*/hd[a-z][0-9]). Unless the second "if" can be
made the default option, we'll have to add knowledge of every of these device
paths here?
On Sun, Sep 17, 2006 at 11:08:23PM +0200, Robert Millan wrote:
>
> Support for Linux I2O devices (imported from GRUB Legacy).
>
> 2006-09-17 Robert Millan <address@hidden>
>
> Import from GRUB Legacy (lib/device.c):
> * util/i386/pc/grub-mkdevicemap.c (get_i2o_disk_name): New function.
> (init_device_map) [__linux__]: Add support for I2O devices.
>
> --
> Robert Millan
>
> My spam trap is address@hidden Note: this address is only intended for
> spam harvesters. Writing to it will get you added to my black list.
> 2006-09-17 Robert Millan <address@hidden>
>
> Import from GRUB Legacy (lib/device.c):
> * util/i386/pc/grub-mkdevicemap.c (get_i2o_disk_name): New function.
> (init_device_map) [__linux__]: Add support for I2O devices.
>
> Index: util/i386/pc/grub-mkdevicemap.c
> ===================================================================
> RCS file: /sources/grub/grub2/util/i386/pc/grub-mkdevicemap.c,v
> retrieving revision 1.3
> diff -u -r1.3 grub-mkdevicemap.c
> --- util/i386/pc/grub-mkdevicemap.c 14 Sep 2006 18:52:50 -0000 1.3
> +++ util/i386/pc/grub-mkdevicemap.c 17 Sep 2006 21:06:27 -0000
> @@ -277,6 +277,12 @@
> {
> sprintf (name, "/dev/ataraid/d%c", unit + '0');
> }
> +
> +static void
> +get_i2o_disk_name (char *name, char unit)
> +{
> + sprintf (name, "/dev/i2o/hd%c", unit);
> +}
> #endif
>
> /* Check if DEVICE can be read. If an error occurs, return zero,
> @@ -482,6 +488,23 @@
> }
> }
> }
> +
> + /* This is for I2O - we have /dev/i2o/hd<logical drive><partition> */
> + {
> + char unit;
> +
> + for (unit = 'a'; unit < 'f'; unit++)
> + {
> + char name[24];
> +
> + get_i2o_disk_name (name, unit);
> + if (check_device (name))
> + {
> + fprintf (fp, "(hd%d)\t%s\n", num_hd, name);
> + num_hd++;
> + }
> + }
> + }
> #endif /* __linux__ */
>
> finish:
> _______________________________________________
> Grub-devel mailing list
> address@hidden
> http://lists.gnu.org/mailman/listinfo/grub-devel
--
Robert Millan
My spam trap is address@hidden Note: this address is only intended for
spam harvesters. Writing to it will get you added to my black list.