From dbd729b32d9b1cfa73d05e59d8bd294823417520 Mon Sep 17 00:00:00 2001 From: Robert Morris Date: Fri, 19 Jul 2019 10:20:02 -0400 Subject: [PATCH] with per-proc locks, we don't need the intr_on() inside the loop. --- kernel/proc.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/kernel/proc.c b/kernel/proc.c index 6ba3fec..b880fd4 100644 --- a/kernel/proc.c +++ b/kernel/proc.c @@ -418,12 +418,12 @@ scheduler(void) { struct proc *p; struct cpu *c = mycpu(); + + // Let devices interrupt when no lock is held. + intr_on(); c->proc = 0; for(;;){ - // Give devices a brief chance to interrupt. - intr_on(); - for(p = proc; p < &proc[NPROC]; p++) { acquire(&p->lock); if(p->state == RUNNABLE) {