[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH] Scan root device dynamically at startup

From: Robert Millan
Subject: Re: [PATCH] Scan root device dynamically at startup
Date: Thu, 29 May 2008 11:58:12 +0200
User-agent: Mutt/1.5.13 (2006-08-11)

On Wed, May 28, 2008 at 10:53:07PM +0800, Bean wrote:
> In function grub_set_root_dev (main.c), it uses prefix to calculated
> root, so setting prefix is sufficient.
> About the name, well, findprefix works for me too.
> > Also, what this module is doing looks very similar to "search --set".  Did
> > you check if search command can be used for what you want?  (or otherwise
> > adapted)
> The findroot module is used to locate normal.mod. But search is a
> command, it can only be used after normal.mod has been loaded.

I've been thinking a bit more about this, and my impression is that it the
approach is quite ad-hoc.  For example, some similar problems that this
solution wouldn't solve, but that a very similar solution would:

 a- normal.mod was built into grub.elf (perhaps because the firmware can load
    big files).  Then the problem is finding grub.cfg instead of normal.mod.

 b- User has a disk liing around which happens to have a normal.mod from
    an earlier version of grub (let's assume different ABI).  Turns out this
    disk is used for something else and can't be supressed.  A solution could
    be to use UUIDs for the search, but that can't always work since we need
    a "smart" install process that can probe for them (unlike in the situation
    you described -- I can't imagine doing fancy stuff in bare-bones Vista).

 c- Search for normal.mod was ok, but then this particular port of grub can't
    accept the prefix variable from your module, because it already got this
    variable from the firmware (OFW does this).  And the variable from firmware
    happens to be completely unusable.

I think a solution that would fit well here is to use memdisk to embed a
grub.cfg.  Then in each situation we could have a different grub.cfg script
that finds appropiate prefix using the search command.

Robert Millan

<GPLv2> I know my rights; I want my phone call!
<DRM> What good is a phone call… if you are unable to speak?
(as seen on /.)

reply via email to

[Prev in Thread] Current Thread [Next in Thread]