Re: [PATCH] x86 efi: bugfix interrupt disabling sequence

From: Matt Fleming
Date: Wed Sep 25 2013 - 09:12:38 EST


On Mon, 23 Sep, at 11:45:28AM, Bart Kuivenhoven wrote:
> 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.
>
> Signed-off-by: Bart Kuivenhoven <bemk@xxxxxxxxxx>
> ---
> arch/x86/boot/compressed/eboot.c | 15 +--------------
> 1 file changed, 1 insertion(+), 14 deletions(-)

Applied, thanks Bart!

--
Matt Fleming, Intel Open Source Technology Center
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/