diff --git a/proc.c b/proc.c index 46a38bf..3991832 100644 --- a/proc.c +++ b/proc.c @@ -202,16 +202,14 @@ scheduler(void) // Switch to chosen process. It is the process's job // to release proc_table_lock and then reacquire it // before jumping back to us. - - setupsegs(p); cp = p; + setupsegs(p); p->state = RUNNING; swtch(&cpus[cpu()].context, &p->context); // Process is done running for now. // It should have changed its p->state before coming back. cp = 0; - setupsegs(0); }