fedora core 6 1.2949 + vserver 2.2.0
[linux-2.6.git] / arch / i386 / kernel / doublefault.c
index 789af3e..b4d14c2 100644 (file)
@@ -20,7 +20,7 @@ static void doublefault_fn(void)
        struct Xgt_desc_struct gdt_desc = {0, 0};
        unsigned long gdt, tss;
 
-       __asm__ __volatile__("sgdt %0": "=m" (gdt_desc): :"memory");
+       store_gdt(&gdt_desc);
        gdt = gdt_desc.address;
 
        printk("double fault, gdt at %08lx [%d bytes]\n", gdt, gdt_desc.size);
@@ -44,7 +44,8 @@ static void doublefault_fn(void)
                }
        }
 
-       for (;;) /* nothing */;
+       for (;;)
+               cpu_relax();
 }
 
 struct tss_struct doublefault_tss __cacheline_aligned = {