linux/arch/x86/platform/efi
Ard Biesheuvel 57648adb31 efi/x86: Preserve %ebx correctly in efi_set_virtual_address_map()
Commit:

  59f2a619a2 ("efi: Add 'runtime' pointer to struct efi")

modified the assembler routine called by efi_set_virtual_address_map(),
to grab the 'runtime' EFI service pointer while running with paging
disabled (which is tricky to do in C code)

After the change, register %ebx is not restored correctly, resulting
in all kinds of weird behavior, so fix that.

Reported-by: Guenter Roeck <linux@roeck-us.net>
Tested-by: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Link: https://lore.kernel.org/r/20200304133515.15035-1-ardb@kernel.org
Link: https://lore.kernel.org/r/20200308080859.21568-22-ardb@kernel.org
2020-03-08 09:58:23 +01:00
..
efi_32.c efi: Add 'runtime' pointer to struct efi 2020-02-23 21:59:42 +01:00
efi_64.c Merge branch 'efi/urgent' into efi/core, to pick up fixes 2020-03-08 09:57:58 +01:00
efi_stub_32.S efi/x86: Preserve %ebx correctly in efi_set_virtual_address_map() 2020-03-08 09:58:23 +01:00
efi_stub_64.S efi/x86: Check number of arguments to variadic functions 2020-01-10 18:55:04 +01:00
efi_thunk_64.S efi/x86: Check number of arguments to variadic functions 2020-01-10 18:55:04 +01:00
efi.c Merge tag 'efi-next' of git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi into efi/core 2020-03-08 09:23:36 +01:00
Makefile efi/x86: Disable instrumentation in the EFI runtime handling code 2020-01-25 10:14:37 +01:00
quirks.c Merge tag 'efi-next' of git://git.kernel.org/pub/scm/linux/kernel/git/efi/efi into efi/core 2020-03-08 09:23:36 +01:00