Skip to content

i386/x86_64 boot: 32-bit boot protocol

Huang, Ying lkml 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest3 patches 13 repliesIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/3i386/x86_64 boot: setup dataarch/i386/Kconfig arch/i386/boot/header.S arch/i386/kernel/setup.c +5 more+184 -410 replies
2/3i386/x86_64 boot: boot parameters export via sysfsarch/i386/kernel/Makefile arch/i386/kernel/ksysfs.c arch/i386/kernel/setup.c +2 more+246 -20 replies
3/3i386/x86_64 boot: document for 32 bit boot protocolDocumentation/i386/boot.txt Documentation/i386/zero-page.txt+99 -1000 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

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

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