RFC: running out of x86 boot loader IDs

From: H. Peter Anvin
Date: Thu Jan 29 2009 - 18:06:59 EST


The 4-bit values used to hold x86 boot loader IDs are near exhaustion. As a result, I'm proposing an extension protocol and will implement it in time for the next merge window unless there are objections.

The proposal will be as follows:

- The boot loader IDs (type_of_loader >> 4) E and F will be reserved:

E - extended IDs
F - special uses

F is consistent with the current use of FF for "unknown".

- If the boot loader ID is E, the current pad1 field at 0x226 is repurposed as an extended loader ID. The reason to use the pad1 field is that it is present in all headers since version 2.02. The boot loader ID will simply be: ((extended ID + 0x10) << 4) + (version), where (version) as before is (type_of_loader & 15). This is the value which will be reported in /proc/sys/kernel/bootloader_type.

The biggest question is probably: is there a need/desire for an extended version field, or is four bits enough for existing bootloader needs?

-hpa

--
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/