- Enabled interrupts on page faults also for V86 mode.

svn path=/trunk/; revision=11845
This commit is contained in:
Hartmut Birr 2004-11-27 19:32:57 +00:00
parent 63e5456684
commit ae233008f1

View file

@ -546,6 +546,11 @@ KiTrapHandler(PKTRAP_FRAME Tf, ULONG ExceptionNr)
cr2 = Ke386GetCr2();
Tf->DebugPointer = (PVOID)cr2;
if (ExceptionNr == 14 && Tf->Eflags & FLAG_IF)
{
Ke386EnableInterrupts();
}
/*
* If this was a V86 mode exception then handle it specially
*/
@ -574,10 +579,6 @@ KiTrapHandler(PKTRAP_FRAME Tf, ULONG ExceptionNr)
{
KEBUGCHECKWITHTF(ATTEMPTED_EXECUTE_OF_NOEXECUTE_MEMORY, 0, 0, 0, 0, Tf);
}
if (Tf->Eflags & FLAG_IF)
{
Ke386EnableInterrupts();
}
Status = MmPageFault(Tf->Cs&0xffff,
&Tf->Eip,
&Tf->Eax,