Re: [PATCH] x86/efi: autoload efivars

2014-07-09 Thread joeyli
On Tue, Jul 08, 2014 at 01:19:42PM +0100, Ben Hutchings wrote: On Tue, 2014-07-08 at 11:14 +0100, Matt Fleming wrote: On Tue, 08 Jul, at 11:00:58AM, Lee, Chun-Yi wrote: [...] --- a/arch/x86/platform/efi/efi.c +++ b/arch/x86/platform/efi/efi.c @@ -44,6 +44,7 @@ #include linux/io.h

[PATCH v2] x86/efi: autoload efivars

2014-07-09 Thread Lee, Chun-Yi
The original patch is from Ben Hutchings's contribution to debian kernel. Got Ben's permission to remove the code of efi-pstore.c and send to linux-efi: https://github.com/BlankOn/linux-debian/blob/master/debian/patches/features/all/efi-autoload-efivars.patch efivars is generally useful to have

Linux kernel EFI stub bug?

2014-07-09 Thread Michael Brown
I think I've found a bug in the kernel's EFI boot stub. Specifically, in arch/x86/boot/compressed/eboot.c, in make_boot_params(): sys_table = (efi_system_table_t *)(unsigned long)efi_early-table; This compiles and links (on my system) to mov%rdi,0xe658(%rip)# 0x3d16f0 The

Re: Linux kernel EFI stub bug?

2014-07-09 Thread Michael Brown
On 09/07/14 16:37, H. Peter Anvin wrote: As far as I can tell, the underlying problem is that .bss variables in eboot.o end up with addresses beyond the end of the loaded kernel. I would think we need to have an unallocated section -- as is typical for a .bss section -- so the image loader

Re: Linux kernel EFI stub bug?

2014-07-09 Thread H. Peter Anvin
On 07/09/2014 08:44 AM, Michael Brown wrote: It is possible to create a .bss section in the PE/COFF header: iPXE does this. For example: objdump -x bin-x86_64-efi/ipxe.efi Sections: Idx Name Size VMA LMA File off Algn 0 .text00081948

Re: [PATCH] x86, eboot: Support initrd loaded above 4G

2014-07-09 Thread Matt Fleming
On Wed, 18 Jun, at 03:28:19PM, Matt Fleming wrote: On Sat, 14 Jun, at 12:23:41PM, Yinghai Lu wrote: For boot efi kernel directly without bootloader. If the kernel support XLF_CAN_BE_LOADED_ABOVE_4G, we should not limit initrd under hdr-initrd_add_max. Signed-off-by: Yinghai Lu

[PATCH] efi: Include a .bss section within the PE/COFF headers

2014-07-09 Thread Michael Brown
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

Re: [PATCH] efi: Include a .bss section within the PE/COFF headers

2014-07-09 Thread Michael Brown
On 09/07/14 22:41, Michael Brown wrote: 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

Re: [PATCH] efi: Include a .bss section within the PE/COFF headers

2014-07-09 Thread H. Peter Anvin
init_size does not include any kind of alignment padding. On July 9, 2014 3:20:40 PM PDT, Michael Brown mbr...@fensystems.co.uk wrote: On 09/07/14 22:41, Michael Brown wrote: The PE/COFF headers currently describe only the initialised-data portions of the image, and result in no space being

[PATCH 1/1] arch/x86: Add better error logging to efi main

2014-07-09 Thread ulf
From: Ulf Winkelvos u...@winkelvos.de Hopefully this will enable us to better debug: https://bugzilla.kernel.org/show_bug.cgi?id=68761 Signed-off-by: Ulf Winkelvos u...@winkelvos.de --- arch/x86/boot/compressed/eboot.c | 14 +++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff