- Fix KiDispatchException to unmask KI_EXCEPTION_INTERNAL when setting the exception...
[reactos.git] / reactos / ntoskrnl / include / internal / ke.h
index a10789a..fcabe24 100644 (file)
@@ -71,11 +71,6 @@ typedef PCHAR
     IN ULONG Length
 );
 
     IN ULONG Length
 );
 
-struct _KIRQ_TRAPFRAME;
-struct _KPCR;
-struct _KPRCB;
-struct _KEXCEPTION_FRAME;
-
 extern ULONG_PTR MmFreeLdrFirstKrnlPhysAddr;
 extern ULONG_PTR MmFreeLdrLastKrnlPhysAddr;
 extern ULONG_PTR MmFreeLdrLastKernelAddress;
 extern ULONG_PTR MmFreeLdrFirstKrnlPhysAddr;
 extern ULONG_PTR MmFreeLdrLastKrnlPhysAddr;
 extern ULONG_PTR MmFreeLdrLastKernelAddress;
@@ -131,7 +126,7 @@ extern LARGE_INTEGER KiTimeIncrementReciprocal;
 extern UCHAR KiTimeIncrementShiftCount;
 extern ULONG KiTimeLimitIsrMicroseconds;
 extern ULONG KiServiceLimit;
 extern UCHAR KiTimeIncrementShiftCount;
 extern ULONG KiTimeLimitIsrMicroseconds;
 extern ULONG KiServiceLimit;
-extern LIST_ENTRY BugcheckCallbackListHead, BugcheckReasonCallbackListHead;
+extern LIST_ENTRY KeBugcheckCallbackListHead, KeBugcheckReasonCallbackListHead;
 extern KSPIN_LOCK BugCheckCallbackLock;
 extern KDPC KiTimerExpireDpc;
 extern KTIMER_TABLE_ENTRY KiTimerTableListHead[TIMER_TABLE_SIZE];
 extern KSPIN_LOCK BugCheckCallbackLock;
 extern KDPC KiTimerExpireDpc;
 extern KTIMER_TABLE_ENTRY KiTimerTableListHead[TIMER_TABLE_SIZE];
@@ -154,6 +149,8 @@ extern PVOID KeUserExceptionDispatcher;
 extern PVOID KeRaiseUserExceptionDispatcher;
 extern UCHAR KiDebugRegisterTrapOffsets[9];
 extern UCHAR KiDebugRegisterContextOffsets[9];
 extern PVOID KeRaiseUserExceptionDispatcher;
 extern UCHAR KiDebugRegisterTrapOffsets[9];
 extern UCHAR KiDebugRegisterContextOffsets[9];
+extern ULONG KeTimeIncrement;
+extern ULONG_PTR KiBugCheckData[5];
 
 /* MACROS *************************************************************************/
 
 
 /* MACROS *************************************************************************/
 
@@ -193,16 +190,6 @@ extern UCHAR KiDebugRegisterContextOffsets[9];
 
 /* INTERNAL KERNEL FUNCTIONS ************************************************/
 
 
 /* INTERNAL KERNEL FUNCTIONS ************************************************/
 
-/* Readies a Thread for Execution. */
-BOOLEAN
-NTAPI
-KiDispatchThreadNoLock(ULONG NewThreadStatus);
-
-/* Readies a Thread for Execution. */
-VOID
-NTAPI
-KiDispatchThread(ULONG NewThreadStatus);
-
 /* Finds a new thread to run */
 NTSTATUS
 FASTCALL
 /* Finds a new thread to run */
 NTSTATUS
 FASTCALL
@@ -393,10 +380,6 @@ KeProfileInterruptWithSource(
     IN KPROFILE_SOURCE Source
 );
 
     IN KPROFILE_SOURCE Source
 );
 
-BOOLEAN
-NTAPI
-KiRosPrintAddress(PVOID Address);
-
 VOID
 NTAPI
 KeUpdateRunTime(
 VOID
 NTAPI
 KeUpdateRunTime(
@@ -520,13 +503,6 @@ KiSetPriorityThread(
     IN KPRIORITY Priority
 );
 
     IN KPRIORITY Priority
 );
 
-BOOLEAN
-NTAPI
-KiDispatcherObjectWake(
-    DISPATCHER_HEADER* hdr,
-    KPRIORITY increment
-);
-
 VOID
 FASTCALL
 KiUnlinkThread(
 VOID
 FASTCALL
 KiUnlinkThread(
@@ -534,15 +510,6 @@ KiUnlinkThread(
     IN NTSTATUS WaitStatus
 );
 
     IN NTSTATUS WaitStatus
 );
 
-VOID
-NTAPI
-KeExpireTimers(
-    PKDPC Apc,
-    PVOID Arg1,
-    PVOID Arg2,
-    PVOID Arg3
-);
-
 VOID
 NTAPI
 KeDumpStackFrames(PULONG Frame);
 VOID
 NTAPI
 KeDumpStackFrames(PULONG Frame);
@@ -724,10 +691,6 @@ VOID
 NTAPI
 KiInitializeBugCheck(VOID);
 
 NTAPI
 KiInitializeBugCheck(VOID);
 
-VOID
-NTAPI
-KiInitializeSystemClock(VOID);
-
 VOID
 NTAPI
 KiSystemStartup(
 VOID
 NTAPI
 KiSystemStartup(
@@ -949,6 +912,15 @@ WRMSR(
     IN LONGLONG Value
 );
 
     IN LONGLONG Value
 );
 
+BOOLEAN
+NTAPI
+KeFreezeExecution(IN PKTRAP_FRAME TrapFrame,
+                  IN PKEXCEPTION_FRAME ExceptionFrame);
+
+VOID
+NTAPI
+KeThawExecution(IN BOOLEAN Enable);
+
 #include "ke_x.h"
 
 #endif /* __NTOSKRNL_INCLUDE_INTERNAL_KE_H */
 #include "ke_x.h"
 
 #endif /* __NTOSKRNL_INCLUDE_INTERNAL_KE_H */