summaryrefslogtreecommitdiff
path: root/main.c
diff options
context:
space:
mode:
Incorporate new understanding of/with Intel SMP spec.
Dropped cmpxchg in favor of xchg, to match lecture notes. Use xchg to release lock, for future protection and to keep gcc from acting clever.
Diffstat (limited to 'main.c')
-rw-r--r--main.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/main.c b/main.c
index 2108d95..6ec6d19 100644
--- a/main.c
+++ b/main.c
@@ -50,8 +50,9 @@ mpmain(void)
if(cpu() != mp_bcpu())
lapic_init(cpu());
setupsegs(0);
- cpus[cpu()].booted = 1;
+ xchg(&cpus[cpu()].booted, 1);
+ cprintf("cpu%d: scheduling\n");
scheduler();
}