diff options
Diffstat (limited to 'arch/x86/platform/efi/efi_stub_64.S')
-rw-r--r-- | arch/x86/platform/efi/efi_stub_64.S | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/x86/platform/efi/efi_stub_64.S b/arch/x86/platform/efi/efi_stub_64.S index e811514beea..65b787a9fc4 100644 --- a/arch/x86/platform/efi/efi_stub_64.S +++ b/arch/x86/platform/efi/efi_stub_64.S @@ -261,6 +261,12 @@ ENTRY(efi_enter32) /* We must preserve return value */ movl %eax, %edi + /* + * Some firmware will return with interrupts enabled. Be sure to + * disable them before we switch GDTs. + */ + cli + movl 44(%esp), %eax movl %eax, 2(%eax) lgdtl (%eax) |