On Sat, 2006-11-25 at 03:59 +0100, Yoshinori K. Okuji wrote: > On Thursday 16 November 2006 00:38, [EMAIL PROTECTED] wrote: > > > I still would like an improvement in the kernel->GRUB communication. > > > What about reusing the tags structure? For example: > > > > > > multiboot_header: > > > .long MAGIC > > > .long MULTIBOOT_TAG_START [...] > > > .long MULTIBOOT_TAG_LOADADDR ; .long 12 ; .long _start > > > .long MULTIBOOT_TAG_ENTRYADDR ; .long 12 ; .long main > > > .long MULTIBOOT_TAG_END ; .long 8 > > > etc? > > > > > > A cpp macro or two could make that a little more convenient. > > > > > > The fact that the START tag requires the number of tags and number of > > > bytes is inconvenient here. Do we really need that? Why not just: > > > > > > while (tag->key != MULTIBOOT_TAG_END) > > > process_tag(tag); > > > > I really like such tags structure. > > Tags structure are *very* flexible: can be easily extended without breaking > > backward compatibility. > > I don't like it very much. My first draft was exactly like this. But, after > some discussion in the IRC, I decided to revert my idea, because specifying > so many parameters by hand really sucks. It is too error-prone.
Bits are less error-prone? How about this: MB_START_TAGS() MB_LOADADDR(0x1234) MB_ENTRYADDR(0x1234) MB_END_TAGS() -Hollis _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org http://lists.gnu.org/mailman/listinfo/grub-devel