Author: sginsberg
Date: Sat Apr 7 01:18:36 2012
New Revision: 56335
URL: http://svn.reactos.org/svn/reactos?rev=56335&view=rev
Log:
- It seems the remaining page fault issue was fixed as well in 56333, so it should now be safe to enable this check. Finally, it is now illegal to page fault in ReactOS with interrupts disabled, as it should be. Previous attempts to fix this were likely hindered by the old memory manager, but ARM3 seems to do its job and doesn't fault on non-paged memory that I believe the old Mm was doing.
- Hacks--;
Modified:
trunk/reactos/ntoskrnl/ke/i386/traphdlr.c
Modified: trunk/reactos/ntoskrnl/ke/i386/traphdlr.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/ntoskrnl/ke/i386/traphdlr.…
==============================================================================
--- trunk/reactos/ntoskrnl/ke/i386/traphdlr.c [iso-8859-1] (original)
+++ trunk/reactos/ntoskrnl/ke/i386/traphdlr.c [iso-8859-1] Sat Apr 7 01:18:36 2012
@@ -1190,8 +1190,7 @@
/* Enable interupts */
_enable();
-#if 0
- /* Check if we faulted with interrupts disabled */
+ /* Check if we came in with interrupts disabled */
if (!(TrapFrame->EFlags & EFLAGS_INTERRUPT_MASK))
{
/* This is completely illegal, bugcheck the system */
@@ -1202,14 +1201,6 @@
TrapFrame->Eip,
TrapFrame);
}
-#else
- if (!(TrapFrame->EFlags & EFLAGS_INTERRUPT_MASK))
- {
- /* Warn and dump stack */
- DPRINT1("Page fault with interrupts disabled!\n");
- KeRosDumpStackFrames(NULL, 0);
- }
-#endif
/* Check for S-LIST fault in kernel mode */
if (TrapFrame->Eip == (ULONG_PTR)ExpInterlockedPopEntrySListFault)