summaryrefslogtreecommitdiff
path: root/trap.c
diff options
context:
space:
mode:
authorkaashoek <kaashoek>2006-09-03 18:32:58 +0000
committerkaashoek <kaashoek>2006-09-03 18:32:58 +0000
commit97c74a3a642c17dfcd605018c3fb45a1f4f4d5e2 (patch)
tree0b38280ba50dc6cd9b3a6670773ec5ba91c47803 /trap.c
parent0b6ab8416e50dcbf790163282f461647e180dbc6 (diff)
downloadxv6-labs-97c74a3a642c17dfcd605018c3fb45a1f4f4d5e2.tar.gz
xv6-labs-97c74a3a642c17dfcd605018c3fb45a1f4f4d5e2.tar.bz2
xv6-labs-97c74a3a642c17dfcd605018c3fb45a1f4f4d5e2.zip
nits
Diffstat (limited to 'trap.c')
-rw-r--r--trap.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/trap.c b/trap.c
index ef40f7e..bbb2500 100644
--- a/trap.c
+++ b/trap.c
@@ -79,12 +79,16 @@ trap(struct trapframe *tf)
return;
}
- cprintf("trap %d from cpu %d eip %x\n", v, cpu(), tf->eip);
+ if(v == (IRQ_OFFSET + IRQ_SPURIOUS)){
+ cprintf("spurious interrupt from cpu %d eip %x\n", cpu(), tf->eip);
+ return; // no eoi for this one.
+ }
+
if(curproc[cpu()]) {
- cprintf("pid %d\n", curproc[cpu()]->pid);
+ cprintf("pid %d: unhandled trap %d on cpu %d eip %x---terminate process\n",
+ curproc[cpu()]->pid, v, cpu(), tf->eip);
proc_exit();
}
- // panic("trap");
-
- return;
+ cprintf("unexpected trap %d from cpu %d eip %x\n", v, cpu(), tf->eip);
+ panic("trap");
}