]> git.baikalelectronics.ru Git - kernel.git/commit
x86/efi: Use efi_exit_boot_services()
authorJeffrey Hugo <jhugo@codeaurora.org>
Mon, 29 Aug 2016 20:38:54 +0000 (14:38 -0600)
committerMatt Fleming <matt@codeblueprint.co.uk>
Mon, 5 Sep 2016 11:40:16 +0000 (12:40 +0100)
commit1d577a05bda504888231039fcb83d017a57204d0
treec018fb3826ea8492641be62c2f3162fb67f5aa0e
parentf3b633d5680417f4262535e0df4da1bc6322174b
x86/efi: Use efi_exit_boot_services()

The eboot code directly calls ExitBootServices.  This is inadvisable as the
UEFI spec details a complex set of errors, race conditions, and API
interactions that the caller of ExitBootServices must get correct.  The
eboot code attempts allocations after calling ExitBootSerives which is
not permitted per the spec.  Call the efi_exit_boot_services() helper
intead, which handles the allocation scenario properly.

Signed-off-by: Jeffrey Hugo <jhugo@codeaurora.org>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Leif Lindholm <leif.lindholm@linaro.org>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: <stable@vger.kernel.org>
Signed-off-by: Matt Fleming <matt@codeblueprint.co.uk>
arch/x86/boot/compressed/eboot.c