This commit is contained in:
kaashoek 2006-09-03 18:32:58 +00:00
parent 0b6ab8416e
commit 97c74a3a64
3 changed files with 10 additions and 8 deletions

View file

@ -46,7 +46,7 @@ ioapic_init(void)
for (i = 0; i < nintr; i++) { for (i = 0; i < nintr; i++) {
// active-hi and edge-triggered for ISA interrupts // active-hi and edge-triggered for ISA interrupts
// Assume that pin 0 on the first I/O APIC is an ExtINT pin. // Assume that pin 0 on the first I/O APIC is an ExtINT pin.
// Assume that pins 1-15 are ISA interrupts and that all // Assume that pins 1-15 are ISA interrupts
l = ioapic_read(io, IOAPIC_REDTBL_LO(i)); l = ioapic_read(io, IOAPIC_REDTBL_LO(i));
l = l & ~IOART_INTMASK; // allow INTs l = l & ~IOART_INTMASK; // allow INTs
l |= IOART_INTMSET; l |= IOART_INTMSET;
@ -59,7 +59,6 @@ ioapic_init(void)
h = ioapic_read(io, IOAPIC_REDTBL_HI(i)); h = ioapic_read(io, IOAPIC_REDTBL_HI(i));
h &= ~IOART_DEST; h &= ~IOART_DEST;
ioapic_write(io, IOAPIC_REDTBL_HI(i), h); ioapic_write(io, IOAPIC_REDTBL_HI(i), h);
// cprintf("intr %d: lo 0x%x hi 0x%x\n", i, l, h);
} }
} }

14
trap.c
View file

@ -79,12 +79,16 @@ trap(struct trapframe *tf)
return; 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()]) { 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(); proc_exit();
} }
// panic("trap"); cprintf("unexpected trap %d from cpu %d eip %x\n", v, cpu(), tf->eip);
panic("trap");
return;
} }

View file

@ -200,7 +200,6 @@ int
main(void) main(void)
{ {
printf(stdout, "userfs is running\n"); printf(stdout, "userfs is running\n");
opentest(); opentest();
writetest(); writetest();
writetest1(); writetest1();