Kernel/x86 - Debugging SMP bugs, lead to some fixes and cleanups
[tpg/acess2.git] / Kernel / arch / x86 / errors.c
index c66e49d..d73fcea 100644 (file)
@@ -5,6 +5,7 @@
  */
 #include <acess.h>
 #include <proc.h>
+#include <mm_virt.h>
 
 // === CONSTANTS ===
 #define        MAX_BACKTRACE   8       //!< Maximum distance to trace the stack backwards
@@ -233,6 +234,7 @@ void Error_Backtrace(Uint eip, Uint ebp)
        
        while( MM_GetPhysAddr(ebp) && i < MAX_BACKTRACE )
        {
+               if( ebp >= MM_KERNEL_STACKS_END )       break;
                //str = Debug_GetSymbol(*(Uint*)(ebp+4), &delta);
                if(str == NULL)
                        LogF(" >> 0x%x", *(Uint*)(ebp+4));

UCC git Repository :: git.ucc.asn.au