diff options
| -rw-r--r-- | arch/x86/boot/compressed/eboot.c | 17 |
1 files changed, 2 insertions, 15 deletions
diff --git a/arch/x86/boot/compressed/eboot.c b/arch/x86/boot/compressed/eboot.c index 5c0dc55f2387..a7677babf946 100644 --- a/arch/x86/boot/compressed/eboot.c +++ b/arch/x86/boot/compressed/eboot.c | |||
| @@ -748,7 +748,7 @@ free_mem_map: | |||
| 748 | struct boot_params *efi_main(void *handle, efi_system_table_t *_table, | 748 | struct boot_params *efi_main(void *handle, efi_system_table_t *_table, |
| 749 | struct boot_params *boot_params) | 749 | struct boot_params *boot_params) |
| 750 | { | 750 | { |
| 751 | struct desc_ptr *gdt, *idt; | 751 | struct desc_ptr *gdt; |
| 752 | efi_loaded_image_t *image; | 752 | efi_loaded_image_t *image; |
| 753 | struct setup_header *hdr = &boot_params->hdr; | 753 | struct setup_header *hdr = &boot_params->hdr; |
| 754 | efi_status_t status; | 754 | efi_status_t status; |
| @@ -780,17 +780,6 @@ struct boot_params *efi_main(void *handle, efi_system_table_t *_table, | |||
| 780 | goto fail; | 780 | goto fail; |
| 781 | } | 781 | } |
| 782 | 782 | ||
| 783 | status = efi_call_phys3(sys_table->boottime->allocate_pool, | ||
| 784 | EFI_LOADER_DATA, sizeof(*idt), | ||
| 785 | (void **)&idt); | ||
| 786 | if (status != EFI_SUCCESS) { | ||
| 787 | efi_printk(sys_table, "Failed to alloc mem for idt structure\n"); | ||
| 788 | goto fail; | ||
| 789 | } | ||
| 790 | |||
| 791 | idt->size = 0; | ||
| 792 | idt->address = 0; | ||
| 793 | |||
| 794 | /* | 783 | /* |
| 795 | * If the kernel isn't already loaded at the preferred load | 784 | * If the kernel isn't already loaded at the preferred load |
| 796 | * address, relocate it. | 785 | * address, relocate it. |
| @@ -865,10 +854,8 @@ struct boot_params *efi_main(void *handle, efi_system_table_t *_table, | |||
| 865 | desc->base2 = 0x00; | 854 | desc->base2 = 0x00; |
| 866 | #endif /* CONFIG_X86_64 */ | 855 | #endif /* CONFIG_X86_64 */ |
| 867 | 856 | ||
| 868 | asm volatile ("lidt %0" : : "m" (*idt)); | ||
| 869 | asm volatile ("lgdt %0" : : "m" (*gdt)); | ||
| 870 | |||
| 871 | asm volatile("cli"); | 857 | asm volatile("cli"); |
| 858 | asm volatile ("lgdt %0" : : "m" (*gdt)); | ||
| 872 | 859 | ||
| 873 | return boot_params; | 860 | return boot_params; |
| 874 | fail: | 861 | fail: |
