x86/{fault,efi}: Fix and rename efi_recover_from_page_fault()
authorAndy Lutomirski <luto@kernel.org>
Wed, 10 Feb 2021 02:33:46 +0000 (18:33 -0800)
committerBorislav Petkov <bp@suse.de>
Wed, 10 Feb 2021 17:39:23 +0000 (18:39 +0100)
commitc46f52231e79af025e2c89e889d69ec20a4c024f
treeedd2bdcce0593d181156fa6fb744e1ddc3fe5610
parentca247283781d754216395a41c5e8be8ec79a5f1c
x86/{fault,efi}: Fix and rename efi_recover_from_page_fault()

efi_recover_from_page_fault() doesn't recover -- it does a special EFI
mini-oops.  Rename it to make it clear that it crashes.

While renaming it, I noticed a blatant bug: a page fault oops in a
different thread happening concurrently with an EFI runtime service call
would be misinterpreted as an EFI page fault.  Fix that.

This isn't quite exact. The situation could be improved by using a
special CS for calls into EFI.

 [ bp: Massage commit message and simplify in interrupt check. ]

Signed-off-by: Andy Lutomirski <luto@kernel.org>
Signed-off-by: Borislav Petkov <bp@suse.de>
Link: https://lkml.kernel.org/r/f43b1e80830dc78ed60ed8b0826f4f189254570c.1612924255.git.luto@kernel.org
arch/x86/include/asm/efi.h
arch/x86/mm/fault.c
arch/x86/platform/efi/quirks.c