Robert Millan wrote:
On Wed, Nov 05, 2008 at 07:57:38AM +0100, Christian Franke wrote:
Alternative: Export a symbol describing the ABI version in kernel
("grub_abi_3_14").
That requires more bytes than a 32-bit integer.
You export grub_abi anyway. _3_14 is 4 bytes instead of 4 but saves.
grub_abi_* can be a fictive variable by adding something like
{"grub_abi_<..>", 0},
to gensymlist.sh.in
Access this symbol in each module (this can be hidden
in GRUB_MOD_INIT).
And this adds code in every module, but for non-external modules we already
have reassurance that their abi is consistent (users should never bypass
grub-install; if they do, it's likely going to break for them anyway).
I understand there's a minor benefit for programmers of external modules,
but both things are at the expense of extra size to kernel and core.img
modules. External modules will only provide non-essential functionality, so
it's not a problem they have to check the ABI IMHO.
--
Regards
Vladimir 'phcoder' Serbinenko
_______________________________________________
Grub-devel mailing list
Grub-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/grub-devel