From: Hollis Blanchard <hollis@penguinppc.org>
To: The development of GRUB 2 <grub-devel@gnu.org>
Subject: Re: identifying module types
Date: Tue, 12 Dec 2006 18:07:26 -0600 [thread overview]
Message-ID: <1165968446.28426.81.camel@basalt> (raw)
In-Reply-To: <200612122328.16322.okuji@enbug.org>
On Tue, 2006-12-12 at 23:28 +0100, Yoshinori K. Okuji wrote:
> On Saturday 09 December 2006 01:02, Hollis Blanchard wrote:
> > On the consumer side of multiboot (in this case Xen), we need to loop
> > over the tags, and when we find a module tag, how do we know which it
> > is? The Multiboot2 spec tells us "The order of modules is not
> > guaranteed." (Why not?)
>
> Because the spec does not know how modules are loaded by a boot loader at all.
> It does not know how to configure a boot loader. It does not know whether it
> is possible to interact with a boot loader at runtime. On the assumption in
> the spec, all we can say is that it is recommended that modules are loaded in
> the order specified by the user, if possible. We may not say "must" here.
I guess I'm not clear on this. The modules must be enumerated in some
order, whether manually by the user or in a config file or by a script.
Wouldn't it be appropriate to require that this order be preserved?
Are you envisioning a scenario like a collection of "module" files in a
menuentry.d directory, and then what is the order?
Xen could go on depending on the ordering, with the caveat that
bootloaders which reorder modules won't work.
> > One option is a fixed-length encoded field, say 32 bytes wide. To avoid
> > namespace collisions, we could require that projects prefix types with
> > their project name, which must be at least 4 bytes.
> >
> > Another alternative would be a NULL-terminated string, which would
> > appear in memory just before the NULL-terminated command line, e.g.
> > x e n \0 c o n s o l e = c o m 2 \0
> > This is more flexible, but slightly more awkward on the consumer side:
> > type = module_tag->text;
> > cmdline = strchr(module_tag->text, '\0') + 1;
>
> Isn't it easier to pass two strings rather than packing them to a single
> string?
>
> type = module->type;
> cmdline = module->cmdline;
That only works if module->type is of fixed size. What size would you
like?
Aside from the arbitrary user-visible limit, a fixed size may make
namespace collisions more likely (though certainly we would need to
account for collisions even if the size were variable).
-Hollis
next prev parent reply other threads:[~2006-12-13 0:08 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-10-26 19:58 some multiboot2 comments Hollis Blanchard
2006-10-27 4:09 ` Tristan Gingold
2006-10-27 5:37 ` Hollis Blanchard
2006-10-28 14:06 ` Yoshinori K. Okuji
2006-10-29 16:38 ` Tristan Gingold
2006-10-30 19:20 ` Yoshinori K. Okuji
2006-10-30 20:24 ` Tristan Gingold
2006-11-02 19:52 ` Yoshinori K. Okuji
2006-11-04 14:40 ` Tristan Gingold
2006-12-09 0:02 ` identifying module types Hollis Blanchard
2006-12-09 5:31 ` Tristan Gingold
2006-12-12 20:56 ` Hollis Blanchard
2006-12-12 22:54 ` Yoshinori K. Okuji
2006-12-13 4:14 ` Hollis Blanchard
2006-12-16 5:09 ` Tristan Gingold
2006-12-16 5:04 ` Tristan Gingold
2006-12-12 21:48 ` Hollis Blanchard
2006-12-16 5:06 ` Tristan Gingold
2006-12-12 22:28 ` Yoshinori K. Okuji
2006-12-13 0:07 ` Hollis Blanchard [this message]
2006-12-13 20:47 ` Yoshinori K. Okuji
2006-10-28 14:11 ` some multiboot2 comments Yoshinori K. Okuji
2006-10-28 18:32 ` Hollis Blanchard
2006-10-30 19:15 ` Yoshinori K. Okuji
2006-10-31 1:43 ` Hollis Blanchard
2006-11-02 19:53 ` Yoshinori K. Okuji
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1165968446.28426.81.camel@basalt \
--to=hollis@penguinppc.org \
--cc=grub-devel@gnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.