From 8c8b748a2f0f10188c1a58c529239fff3a3b1b01 Mon Sep 17 00:00:00 2001 From: rsc Date: Thu, 27 Sep 2007 19:35:25 +0000 Subject: [PATCH] now spllo is okay --- trap.c | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-) diff --git a/trap.c b/trap.c index 9e8d09a..7ef32ff 100644 --- a/trap.c +++ b/trap.c @@ -83,14 +83,8 @@ trap(struct trapframe *tf) cp->pid, cp->name, tf->trapno, tf->err, cpu(), tf->eip); cp->killed = 1; } - - // Undo splhi but do not enable interrupts. - // If you change this to spllo() you can get a - // triple fault by just typing too fast at the prompt. - // An interrupt stops us right here, and when that - // interrupt tries to return, somehow the segment - // registers are all invalid. - --cpus[cpu()].nsplhi; + + spllo(); // Force process exit if it has been killed and is in user space. // (If it is still executing in the kernel, let it keep running