}
Debug_KernelPanic();
+
+ Error_Backtrace(Regs->RIP, Regs->RBP);
Log("CPU Error %x, Code: 0x%x", Regs->IntNum, Regs->ErrorCode);
// Log(" - %s", csaERROR_NAMES[Regs->IntNum]);
// return;
//}
- if( IP > MM_USER_MAX
- && IP < MM_KERNEL_CODE
+ if( IP > MM_USER_MAX && IP < MM_KERNEL_CODE
&& (MM_MODULE_MIN > IP || IP > MM_MODULE_MAX)
)
{
}
- while( MM_GetPhysAddr(BP) && i < MAX_BACKTRACE )
+ while( MM_GetPhysAddr(BP) && MM_GetPhysAddr(BP+8+7) && i < MAX_BACKTRACE )
{
//str = Debug_GetSymbol(*(Uint*)(ebp+4), &delta);
//if(str == NULL)