[PATCH] i386: fix get_segment_eip() with vm86 segments
[linux-2.6.git] / arch / i386 / power / cpu.c
index 1f15726..e651791 100644 (file)
@@ -10,6 +10,8 @@
 #include <linux/config.h>
 #include <linux/module.h>
 #include <linux/suspend.h>
+#include <asm/mtrr.h>
+#include <asm/mce.h>
 
 static struct saved_context saved_context;
 
@@ -92,7 +94,7 @@ void __restore_processor_state(struct saved_context *ctxt)
        write_cr4(ctxt->cr4);
        write_cr3(ctxt->cr3);
        write_cr2(ctxt->cr2);
-       write_cr2(ctxt->cr0);
+       write_cr0(ctxt->cr0);
 
        /*
         * now restore the descriptor tables to their proper values
@@ -118,6 +120,7 @@ void __restore_processor_state(struct saved_context *ctxt)
        fix_processor_context();
        do_fpu_end();
        mtrr_ap_init();
+       mcheck_init(&boot_cpu_data);
 }
 
 void restore_processor_state(void)