x86/efi: Include a .bss section within the PE/COFF headers
authorMichael Brown <mbrown@fensystems.co.uk>
Thu, 10 Jul 2014 11:26:20 +0000 (12:26 +0100)
committerMatt Fleming <matt.fleming@intel.com>
Thu, 10 Jul 2014 13:21:39 +0000 (14:21 +0100)
commitc7fb93ec51d462ec3540a729ba446663c26a0505
treebe594eff6c2c6b22d4043f86865b26e4c1ebf6ad
parent29e2435fd6d71e0136e2c2ff0433b7dbeeaaccfd
x86/efi: Include a .bss section within the PE/COFF headers

The PE/COFF headers currently describe only the initialised-data
portions of the image, and result in no space being allocated for the
uninitialised-data portions.  Consequently, the EFI boot stub will end
up overwriting unexpected areas of memory, with unpredictable results.

Fix by including a .bss section in the PE/COFF headers (functionally
equivalent to the init_size field in the bzImage header).

Signed-off-by: Michael Brown <mbrown@fensystems.co.uk>
Cc: Thomas Bächler <thomas@archlinux.org>
Cc: Josh Boyer <jwboyer@fedoraproject.org>
Cc: <stable@vger.kernel.org>
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
arch/x86/boot/header.S
arch/x86/boot/tools/build.c