]> git.karo-electronics.de Git - karo-tx-linux.git/commit
x86/efi: Correct EFI boot stub use of code32_start
authorMatt Fleming <matt@console-pimps.org>
Tue, 8 Apr 2014 12:14:00 +0000 (13:14 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 6 May 2014 14:59:29 +0000 (07:59 -0700)
commit45ada9fae6d836aa8e3be5302d7aeb50c44e0629
tree247c1b23e0a31d572abdb59d06a2108e96c84c26
parente1339dc85fd9a6b3670a0d9cca831826b4d7f3c0
x86/efi: Correct EFI boot stub use of code32_start

commit 7e8213c1f3acc064aef37813a39f13cbfe7c3ce7 upstream.

code32_start should point at the start of the protected mode code, and
*not* at the beginning of the bzImage. This is much easier to do in
assembly so document that callers of make_boot_params() need to fill out
code32_start.

The fallout from this bug is that we would end up relocating the image
but copying the image at some offset, resulting in what appeared to be
memory corruption.

Reported-by: Thomas Bächler <thomas@archlinux.org>
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/x86/boot/compressed/eboot.c
arch/x86/boot/compressed/head_32.S
arch/x86/boot/compressed/head_64.S