summaryrefslogtreecommitdiff
path: root/proc.c
diff options
context:
space:
mode:
authorrtm <rtm>2006-06-24 22:47:06 +0000
committerrtm <rtm>2006-06-24 22:47:06 +0000
commit89eb5fbe6d120f19d69c3c84bed69611a746ff03 (patch)
tree1e186995c68932ff5b75f95c5dbdf7d5d307e7d3 /proc.c
parent7df1310b2a8e0d825287d64d09c2c8d82e51907c (diff)
downloadxv6-labs-89eb5fbe6d120f19d69c3c84bed69611a746ff03.tar.gz
xv6-labs-89eb5fbe6d120f19d69c3c84bed69611a746ff03.tar.bz2
xv6-labs-89eb5fbe6d120f19d69c3c84bed69611a746ff03.zip
boot more than two CPUs, each on own initial stack
Diffstat (limited to 'proc.c')
-rw-r--r--proc.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/proc.c b/proc.c
index e771c4d..45696a2 100644
--- a/proc.c
+++ b/proc.c
@@ -112,6 +112,10 @@ swtch()
acquire_spinlock(&kernel_lock);
}
+ // XXX this may be too late, should probably save on the way
+ // in, in case some other CPU decided to run curproc
+ // before we got here. in fact setting state=WAITING and
+ // setting these variables had better be atomic w.r.t. other CPUs.
op->ebp = read_ebp();
op->esp = read_esp();