diff options
| -rw-r--r-- | sys/src/9/port/proc.c | 7 |
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(); |
