diff --git a/reactos/ntoskrnl/ke/i386/cpu.c b/reactos/ntoskrnl/ke/i386/cpu.c index cb7c6e7a81a..784990bea89 100644 --- a/reactos/ntoskrnl/ke/i386/cpu.c +++ b/reactos/ntoskrnl/ke/i386/cpu.c @@ -650,6 +650,7 @@ Ki386InitializeTss(IN PKTSS Tss, KiInitializeTSS(Tss); Tss->CR3 = __readcr3(); Tss->Esp0 = PtrToUlong(KiDoubleFaultStack); + Tss->Esp = PtrToUlong(KiDoubleFaultStack); Tss->Eip = PtrToUlong(KiTrap8); Tss->Cs = KGDT_R0_CODE; Tss->Fs = KGDT_R0_PCR; @@ -679,6 +680,7 @@ Ki386InitializeTss(IN PKTSS Tss, KiInitializeTSS(Tss); Tss->CR3 = __readcr3(); Tss->Esp0 = PtrToUlong(KiDoubleFaultStack); + Tss->Esp = PtrToUlong(KiDoubleFaultStack); Tss->Eip = PtrToUlong(KiTrap2); Tss->Cs = KGDT_R0_CODE; Tss->Fs = KGDT_R0_PCR; diff --git a/reactos/ntoskrnl/ke/i386/trap.s b/reactos/ntoskrnl/ke/i386/trap.s index 594a8f43051..5b0fc76a1f0 100644 --- a/reactos/ntoskrnl/ke/i386/trap.s +++ b/reactos/ntoskrnl/ke/i386/trap.s @@ -1338,7 +1338,6 @@ BogusTrap: .globl _KiTrap8 .func KiTrap8 _KiTrap8: - /* Can't really do too much */ mov eax, 8 jmp _KiSystemFatalException @@ -1511,6 +1510,7 @@ NotV86: cmp eax, offset CheckPrivilegedInstruction jbe KmodeGpf cmp eax, offset CheckPrivilegedInstruction2 + jae KmodeGpf /* FIXME: TODO */ UNHANDLED_PATH