[PATCH -mm -v4 0/3] i386/x86_64 boot: 32-bit boot protocol

From: Huang, Ying
Date: Tue Oct 09 2007 - 02:38:20 EST


This patchset defines a 32-bit boot protocol for i386/x86_64 platform,
adds an extensible boot parameter passing mechanism, export the boot
parameters via sysfs.

The patchset has been tested against 2.6.23-rc8-mm2 kernel on x86_64
and i386.

This patchset is based on the proposal of Peter Anvin.


Known Issues:

- Where is safe to place the linked list of setup_data? Because the
length of the linked list of setup_data is variable, it can not be
copied into BSS segment of kernel as that of "zero page". We must
find a safe place for it, where it will not be overwritten by kernel
during booting up. The i386 kernel will overwrite some pages after
_end. The x86_64 kernel will overwrite some pages from 0x1000 on.

- The fields in zero page are fairly complex (such as struct
edd_info). Is it necessary to document every field inside the first
level fields, until the primary data type? Or is it sufficient to
provide the C struct name only?

- Which fields of boot parameters should be exported directly in
sysfs? Export all fields of boot parameters in sysfs is too complex
and unnecessary. Which fields should be?


-v4

* Reserve setup_data and boot parameters for accessing during
runtime.
* Export boot parameters via sysfs.

-v3

* Move hd0_info and hd1_info back to zero page for compatibility.

-v2

* Increase the boot protocol version number
* Check version number before parsing setup data.
* Revise zero page description according to the source code and move
them to zero-page.txt.


Best Regards,
Huang Ying
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/