On Wed, Jul 22, 2015 at 07:06:10PM +0400, Dmitry Skorodumov wrote: > The efi_info structure stores low 32 bits of memory map > in efi_memmap and high 32 bits in efi_memmap_hi. > > While constructing pointer in the setup_e820(), need > to take into account all 64 bit of the pointer. > > It is because on 64bit machine the function > efi_get_memory_map() may return full 64bit pointer and before > the patch that pointer was truncated. > > Signed-off-by: Dmitry Skorodumov <sdmitry@xxxxxxxxxxxxx> > CC: Denis V. Lunev <den@xxxxxxxxxx> > > tested in Parallles virtual machine, kernel 3.10.0 > --- > arch/x86/boot/compressed/eboot.c | 10 +++++++++- > 1 files changed, 9 insertions(+), 1 deletions(-) > > diff --git a/arch/x86/boot/compressed/eboot.c b/arch/x86/boot/compressed/eboot.c > index 2c82bd1..908a81f 100644 > --- a/arch/x86/boot/compressed/eboot.c > +++ b/arch/x86/boot/compressed/eboot.c > @@ -1184,6 +1184,12 @@ static efi_status_t setup_e820(struct boot_params *params, > u32 nr_entries; > u32 nr_desc; > int i; > + unsigned long m Did you even build-test it before sending? -- Regards/Gruss, Boris. ECO tip #101: Trim your mails when you reply. -- -- To unsubscribe from this list: send the line "unsubscribe linux-efi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html