lguest: use defines from x86 headers instead of magic numbers
authorRusty Russell <rusty@rustcorp.com.au>
Thu, 25 Oct 2007 04:09:53 +0000 (14:09 +1000)
committerRusty Russell <rusty@rustcorp.com.au>
Thu, 25 Oct 2007 04:09:53 +0000 (14:09 +1000)
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
arch/x86/lguest/boot.c
drivers/lguest/x86/core.c

index d2235db4085f4b4c58ada4bc984933ce415121a2..136d9df0295ec5a297388ba22abe0ea5f538d205 100644 (file)
@@ -371,8 +371,7 @@ static void lguest_cpuid(unsigned int *eax, unsigned int *ebx,
 static unsigned long current_cr0, current_cr3;
 static void lguest_write_cr0(unsigned long val)
 {
-       /* 8 == TS bit. */
-       lazy_hcall(LHCALL_TS, val & 8, 0, 0);
+       lazy_hcall(LHCALL_TS, val & X86_CR0_TS, 0, 0);
        current_cr0 = val;
 }
 
@@ -387,7 +386,7 @@ static unsigned long lguest_read_cr0(void)
 static void lguest_clts(void)
 {
        lazy_hcall(LHCALL_TS, 0, 0, 0);
-       current_cr0 &= ~8U;
+       current_cr0 &= ~X86_CR0_TS;
 }
 
 /* CR2 is the virtual address of the last page fault, which the Guest only ever
index 9eed12d5a39506cea25d9b724d05fdb468d84d1c..09d9207420dc6cf44e2b81f4f8fa10e4d0047ed4 100644 (file)
@@ -562,7 +562,7 @@ void lguest_arch_setup_regs(struct lguest *lg, unsigned long start)
         * is supposed to always be "1".  Bit 9 (0x200) controls whether
         * interrupts are enabled.  We always leave interrupts enabled while
         * running the Guest. */
-       regs->eflags = 0x202;
+       regs->eflags = X86_EFLAGS_IF | 0x2;
 
        /* The "Extended Instruction Pointer" register says where the Guest is
         * running. */