linux_dsm_epyc7002/arch/x86/boot/compressed
Bart Kuivenhoven 0ce6cda2c7 x86 efi: bugfix interrupt disabling sequence
The problem in efi_main was that the idt was cleared before the
interrupts were disabled.

The UEFI spec states that interrupts aren't used so this shouldn't be
too much of a problem. Peripherals however don't necessarily know about
this and thus might cause interrupts to happen anyway. Even if
ExitBootServices() has been called.

This means there is a risk of an interrupt being triggered while the IDT
register is nullified and the interrupt bit hasn't been cleared,
allowing for a triple fault.

This patch disables the interrupt flag, while leaving the existing IDT
in place. The CPU won't care about the IDT at all as long as the
interrupt bit is off, so it's safe to leave it in place as nothing will
ever happen to it.

[ Removed the now unused 'idt' variable - Matt ]

Signed-off-by: Bart Kuivenhoven <bemk@redhat.com>
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
2013-09-30 10:23:11 +01:00
..
.gitignore x86, boot: add new generated files to the appropriate .gitignore files 2009-06-02 21:13:30 -07:00
cmdline.c x86, boot: Support loading bzImage, boot_params and ramdisk above 4G 2013-01-29 19:32:33 -08:00
early_serial_console.c x86, boot: Exclude early_serial_console.c if can't use it. 2012-07-21 11:07:34 -07:00
eboot.c x86 efi: bugfix interrupt disabling sequence 2013-09-30 10:23:11 +01:00
eboot.h efi: Move common EFI stub code from x86 arch code to common location 2013-09-25 12:34:34 +01:00
efi_stub_32.S x86, efi: EFI boot stub support 2011-12-12 14:26:10 -08:00
efi_stub_64.S x86, efi: EFI boot stub support 2011-12-12 14:26:10 -08:00
head_32.S x86, build: Dynamically find entry points in compressed startup code 2013-01-27 20:19:37 -08:00
head_64.S x86/mm: Drop unneeded include <asm/*pgtable, page*_types.h> 2013-05-28 11:47:23 +02:00
Makefile arm: add support for LZ4-compressed kernel 2013-07-09 10:33:30 -07:00
misc.c arm: add support for LZ4-compressed kernel 2013-07-09 10:33:30 -07:00
misc.h x86, boot: Sanitize boot_params if not zeroed on creation 2013-01-29 01:22:17 -08:00
mkpiggy.c x86, mkpiggy: Don't open code put_unaligned_le32() 2012-02-28 10:22:57 -08:00
string.c x86, efi: EFI boot stub support 2011-12-12 14:26:10 -08:00
vmlinux.lds.S x86, setup: Allow global variables and functions in the decompressor 2010-08-02 15:34:44 -07:00