xv6

Unnamed repository; edit this file 'description' to name the repository.
Log | Files | Refs | README | LICENSE

commit 124f32ae38260ff32ddd176d37ebb98d19675178
parent 902b13f5d6bab19f7a218acc655421cdb63f4313
Author: rsc <rsc>
Date:   Fri, 24 Aug 2007 19:36:52 +0000

tweak

Diffstat:
Mmain.c | 10+++-------
1 file changed, 3 insertions(+), 7 deletions(-)

diff --git a/main.c b/main.c @@ -20,7 +20,7 @@ void main0(void) { int i; - static int bcpu; // cannot be on stack + static volatile int bcpu; // cannot be on stack // clear BSS memset(edata, 0, end - edata); @@ -32,7 +32,7 @@ main0(void) mp_init(); // collect info about this machine bcpu = mp_bcpu(); - // switch to bootstrap processor's stack + // Switch to bootstrap processor's stack asm volatile("movl %0, %%esp" : : "r" (cpus[bcpu].mpstack+MPSTACK-32)); asm volatile("movl %0, %%ebp" : : "r" (cpus[bcpu].mpstack+MPSTACK)); @@ -72,14 +72,10 @@ void mpmain(void) { cprintf("cpu%d: starting\n", cpu()); - idtinit(); // CPU's idt - if(cpu() == 0) - panic("mpmain on cpu 0"); + idtinit(); lapic_init(cpu()); lapic_timerinit(); lapic_enableintr(); - - // make sure there's a TSS setupsegs(0); cpuid(0, 0, 0, 0, 0); // memory barrier