if(proc == 0 || (tf->cs&3) == 0){
prepanic();
// In kernel, it must be our mistake.
- cprintf("unexpected trap %d from cpu %d eip %x (cr2=0x%x)\n",
- tf->trapno, cpu->id, tf->eip, rcr2());
+ cprintf("unexpected trap %d err %d on cpu %d eip %x addr 0x%x eflags 0x%x\n",
+ tf->trapno, tf->err, cpu->id, tf->eip, rcr2(), tf->eflags);
panic("trap");
}
// In user space, assume process misbehaved.
cprintf("pid %d %s: trap %d err %d on cpu %d "
- "eip 0x%x addr 0x%x--kill proc\n",
+ "eip 0x%x addr 0x%x eflags 0x%x -- kill proc\n",
proc->pid, proc->name, tf->trapno, tf->err, cpu->id, tf->eip,
- rcr2());
+ rcr2(), tf->eflags);
proc->killed = 1;
}