ia64/xen-unstable

changeset 16223:0f86492f1a8c

x86: GDTR must be reset after using real-mode BIOS services. Some
BIOSes clobber GDTR. While we're here reset IDTR too, although it's
not really necessary.
Signed-off-by: John Byrne <john.l.byrne@hp.com>
Sigend-off-by: Keir Fraser <keir@xensource.com>
author Keir Fraser <keir@xensource.com>
date Thu Oct 25 09:43:42 2007 +0100 (2007-10-25)
parents ffc17d35d636
children f63aba1b5387
files xen/arch/x86/boot/trampoline.S
line diff
     1.1 --- a/xen/arch/x86/boot/trampoline.S	Thu Oct 25 09:27:00 2007 +0100
     1.2 +++ b/xen/arch/x86/boot/trampoline.S	Thu Oct 25 09:43:42 2007 +0100
     1.3 @@ -168,6 +168,10 @@ 1:      mov     $(BOOT_TRAMPOLINE>>4),%a
     1.4          /* Disable irqs before returning to protected mode. */
     1.5          cli
     1.6  
     1.7 +        /* Reset GDT and IDT. Some BIOSes clobber GDTR. */
     1.8 +        lidt    bootsym(idt_48)
     1.9 +        lgdt    bootsym(gdt_48)
    1.10 +
    1.11          /* Enter protected mode, and flush insn queue. */
    1.12          xor     %ax,%ax
    1.13          inc     %ax