summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys/src/9/port/proc.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/src/9/port/proc.c b/sys/src/9/port/proc.c
index 4d5b98f6f..33166ce39 100644
--- a/sys/src/9/port/proc.c
+++ b/sys/src/9/port/proc.c
@@ -70,6 +70,9 @@ schedinit(void) /* never returns */
edfrecord(up);
m->proc = nil;
switch(up->state) {
+ default:
+ updatecpu(up);
+ break;
case Running:
ready(up);
break;
@@ -88,8 +91,8 @@ schedinit(void) /* never returns */
mmurelease(up);
unlock(&palloc);
- up->mach = nil;
updatecpu(up);
+ up->mach = nil;
up->qnext = procalloc.free;
procalloc.free = up;
@@ -99,8 +102,8 @@ schedinit(void) /* never returns */
unlock(&procalloc);
sched();
}
+ coherence();
up->mach = nil;
- updatecpu(up);
up = nil;
}
sched();