Cleanup
[tpg/acess2.git] / Kernel / arch / x86 / mm_virt.c
index 1fadd4b..3663d60 100644 (file)
@@ -41,6 +41,7 @@
 extern Uint32  gaInitPageDir[1024];
 extern Uint32  gaInitPageTable[1024];
 extern void    Threads_SegFault(Uint Addr);
+extern void    Error_Backtrace(Uint eip, Uint ebp);
 
 // === PROTOTYPES ===
 void   MM_PreinitVirtual();
@@ -145,6 +146,10 @@ void MM_PageFault(Uint Addr, Uint ErrorCode, tRegs *Regs)
                        );
        }
        
+       Log("Code at %p accessed %p", Regs->eip, Addr);
+       // Print Stack Backtrace
+       Error_Backtrace(Regs->eip, Regs->ebp);
+       
        Log("gaPageDir[0x%x] = 0x%x", Addr>>22, gaPageDir[Addr>>22]);
        if( gaPageDir[Addr>>22] & PF_PRESENT )
                Log("gaPageTable[0x%x] = 0x%x", Addr>>12, gaPageTable[Addr>>12]);
@@ -168,6 +173,7 @@ void MM_DumpTables(tVAddr Start, tVAddr End)
        
        Start >>= 12;   End >>= 12;
        
+       #if 0
        Log("Directory Entries:");
        for(page = Start >> 10;
                page < (End >> 10)+1;
@@ -181,6 +187,7 @@ void MM_DumpTables(tVAddr Start, tVAddr End)
                                );
                }
        }
+       #endif
        
        Log("Table Entries:");
        for(page = Start, curPos = Start<<12;

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