From 31136437684b5987ef46f4c6947940cf96de75b3 Mon Sep 17 00:00:00 2001 From: Robert Morris Date: Wed, 5 Jun 2019 14:05:46 -0400 Subject: spinlocks using gcc intrinsics push_off() / pop_off() set up per-hart plic stuff so all harts get device interrupts --- proc.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) (limited to 'proc.c') diff --git a/proc.c b/proc.c index 766fd93..28cac26 100644 --- a/proc.c +++ b/proc.c @@ -360,7 +360,7 @@ scheduler(void) { struct proc *p; struct cpu *c = mycpu(); - + c->proc = 0; for(;;){ // Enable interrupts on this processor. @@ -385,7 +385,6 @@ scheduler(void) c->proc = 0; } release(&ptable.lock); - } } @@ -393,7 +392,7 @@ scheduler(void) // and have changed proc->state. Saves and restores // intena because intena is a property of this // kernel thread, not this CPU. It should -// be proc->intena and proc->ncli, but that would +// be proc->intena and proc->noff, but that would // break in the few places where a lock is held but // there's no process. void -- cgit v1.2.3