Messages in this thread | | | Date | Thu, 17 Jun 2010 14:55:36 -0600 | Subject | [ANNOUNCE] MDB Merkey Debugger for Linux 2.6.34-06-17-2010 (CR3 Fixes) | From | Jeffrey Merkey <> |
| |
http://merkeydebugger.googlecode.com/files/mdb-2.6.34-06-17-2010.patch
FIXES
Add
mov cr3,%eax mov %eax,cr3
to main callback from notify_die() function. Linux in various functions will alter page tables in batches without issuing a TLB flush command. Daemonize() is one such function where the .mm is deleted and no TLB flush in executed. Such cases require that the debugger always reload CR3 on breakpoint exceptions to avoid double and triple faulting, and in this case will hand the system in the page fault handler if CR3 is not reloaded every exception to make certain the processor has a valid view of the TLB and page tables.
Jeff
| |