]> git.lizzy.rs Git - plan9front.git/blobdiff - sys/src/9/pc64/squidboy.c
pc, pc64: fix grub multiboot
[plan9front.git] / sys / src / 9 / pc64 / squidboy.c
index 4f923ca579aa11f5a62437130f1e84dfbdf4c97f..dda4f257fb459e23002f79a17bb23ef29f66e850 100644 (file)
@@ -8,6 +8,8 @@
 
 #include "mp.h"
 
+extern void _stts(void);
+
 static void
 squidboy(Apic* apic)
 {
@@ -21,6 +23,7 @@ squidboy(Apic* apic)
        lapicinit(apic);
        lapiconline();
        timersinit();
+       _stts();
        schedinit();
 }
 
@@ -76,6 +79,7 @@ mpstartap(Apic* apic)
        apbootp[1] = (uintptr)PADDR(pml4);
        apbootp[2] = (uintptr)apic;
        apbootp[3] = (uintptr)mach;
+       apbootp[4] |= (uintptr)m->havenx<<11;   /* EFER */
 
        /*
         * Universal Startup Algorithm.