#include "ki.h"
Go to the source code of this file.
Defines | |
#define | ASSERT_THREAD(E) |
Functions | |
VOID | KeInitializeThread (IN PKTHREAD Thread, IN PVOID KernelStack, IN PKSYSTEM_ROUTINE SystemRoutine, IN PKSTART_ROUTINE StartRoutine OPTIONAL, IN PVOID StartContext OPTIONAL, IN PCONTEXT ContextFrame OPTIONAL, IN PVOID Teb OPTIONAL, IN PKPROCESS Process) |
BOOLEAN | KeAlertThread (IN PKTHREAD Thread, IN KPROCESSOR_MODE AlertMode) |
ULONG | KeAlertResumeThread (IN PKTHREAD Thread) |
VOID | KeBoostPriorityThread (IN PKTHREAD Thread, IN KPRIORITY Increment) |
KAFFINITY | KeConfineThread (VOID) |
BOOLEAN | KeDisableApcQueuingThread (IN PKTHREAD Thread) |
BOOLEAN | KeEnableApcQueuingThread (IN PKTHREAD Thread) |
ULONG | KeForceResumeThread (IN PKTHREAD Thread) |
VOID | KeFreezeAllThreads (VOID) |
BOOLEAN | KeQueryAutoAlignmentThread (IN PKTHREAD Thread) |
LONG | KeQueryBasePriorityThread (IN PKTHREAD Thread) |
KPRIORITY | KeQueryPriorityThread (IN PKTHREAD Thread) |
BOOLEAN | KeReadStateThread (IN PKTHREAD Thread) |
VOID | KeReadyThread (IN PKTHREAD Thread) |
ULONG | KeResumeThread (IN PKTHREAD Thread) |
VOID | KeRevertToUserAffinityThread (VOID) |
VOID | KeRundownThread () |
KAFFINITY | KeSetAffinityThread (IN PKTHREAD Thread, IN KAFFINITY Affinity) |
VOID | KeSetSystemAffinityThread (IN KAFFINITY Affinity) |
LONG | KeSetBasePriorityThread (IN PKTHREAD Thread, IN LONG Increment) |
LOGICAL | KeSetDisableBoostThread (IN PKTHREAD Thread, IN LOGICAL Disable) |
CCHAR | KeSetIdealProcessorThread (IN PKTHREAD Thread, IN CCHAR Processor) |
BOOLEAN | KeSetKernelStackSwapEnable (IN BOOLEAN Enable) |
KPRIORITY | KeSetPriorityThread (IN PKTHREAD Thread, IN KPRIORITY Priority) |
ULONG | KeSuspendThread (IN PKTHREAD Thread) |
VOID | KeTerminateThread (IN KPRIORITY Increment) |
BOOLEAN | KeTestAlertThread (IN KPROCESSOR_MODE AlertMode) |
VOID | KeThawAllThreads (VOID) |
|
Value: Definition at line 38 of file thredobj.c. |
|
Definition at line 365 of file thredobj.c. References ALERT_INCREMENT, ASSERT, ASSERT_THREAD, DISPATCH_LEVEL, FALSE, KernelMode, KiLockDispatcherDatabase, KiUnlockDispatcherDatabase(), KiUnwaitThread(), KiWaitTest(), RESUME_INCREMENT, TRUE, and Waiting. Referenced by NtAlertResumeThread().
|
|
Definition at line 281 of file thredobj.c. References ALERT_INCREMENT, ASSERT, ASSERT_THREAD, DISPATCH_LEVEL, FALSE, KiLockDispatcherDatabase, KiUnlockDispatcherDatabase(), KiUnwaitThread(), TRUE, and Waiting. Referenced by NtAlertThread().
|
|
Definition at line 459 of file thredobj.c. References ASSERT, DISPATCH_LEVEL, Increment, KiBoostPriorityThread, KiLockDispatcherDatabase, and KiUnlockDispatcherDatabase(). Referenced by ExpWaitForResourceDdk(), NtReadFile(), NtSetInformationProcess(), and VdmDispatchInterrupts().
|
|
Definition at line 515 of file thredobj.c. References _KTHREAD::Affinity, ASSERT, DISPATCH_LEVEL, KeGetCurrentThread, KiLockDispatcherDatabase, KiUnlockDispatcherDatabase(), and _KTHREAD::NextProcessor.
|
|
Definition at line 574 of file thredobj.c. References ASSERT, ASSERT_THREAD, DISPATCH_LEVEL, FALSE, KiLockDispatcherDatabase, and KiUnlockDispatcherDatabase(). Referenced by PspExitThread().
|
|
Definition at line 631 of file thredobj.c. References ASSERT, ASSERT_THREAD, DISPATCH_LEVEL, KiLockDispatcherDatabase, KiUnlockDispatcherDatabase(), and TRUE. Referenced by PspCreateThread().
|
|
Definition at line 688 of file thredobj.c. References ASSERT, ASSERT_THREAD, DISPATCH_LEVEL, KiLockDispatcherDatabase, KiUnlockDispatcherDatabase(), KiWaitTest(), and RESUME_INCREMENT. Referenced by NtTerminateProcess(), NtTerminateThread(), PspExitNormalApc(), PspExitThread(), and PspTerminateProcess().
|
|
Definition at line 757 of file thredobj.c. References _KTHREAD::ApcState, ASSERT, DISPATCH_LEVEL, FALSE, _KTHREAD::FreezeCount, _KSEMAPHORE::Header, KeEnterCriticalRegion, KeGetCurrentThread, KiInsertQueueApc(), KiLockDispatcherDatabase, KiUnlockDispatcherDatabase(), NULL, _KAPC_STATE::Process, RESUME_INCREMENT, _DISPATCHER_HEADER::SignalState, _KTHREAD::SuspendApc, _KTHREAD::SuspendCount, _KTHREAD::SuspendSemaphore, _ETHREAD::ThreadListEntry, and _KPROCESS::ThreadListHead. Referenced by DbgkpSuspendProcess().
|
|
Definition at line 43 of file thredobj.c. References FALSE, _KTIMER::Header, Index, Initialized, KeInitializeApc(), KeInitializeSemaphore(), KeInitializeSpinLock(), KeInitializeTimer(), KeNumberProcessors, KernelMode, KeServiceDescriptorTable, KiInitializeContextThread(), KiLockDispatcherDatabase, KiSuspendNop(), KiSuspendThread(), KiUnlockDispatcherDatabase(), L, NULL, _KWAIT_BLOCK::Object, OriginalApcEnvironment, PKKERNEL_ROUTINE, PKRUNDOWN_ROUTINE, THREAD_WAIT_OBJECTS, ThreadObject, TIMER_WAIT_BLOCK, TRUE, UserMode, _KWAIT_BLOCK::WaitKey, _KWAIT_BLOCK::WaitListEntry, _DISPATCHER_HEADER::WaitListHead, and _KWAIT_BLOCK::WaitType. Referenced by KiInitializeKernel(), and PspCreateThread().
|
|
Definition at line 869 of file thredobj.c. References ASSERT_THREAD.
|
|
Definition at line 904 of file thredobj.c. References ASSERT, ASSERT_THREAD, _KPROCESS::BasePriority, DISPATCH_LEVEL, Increment, KiLockDispatcherDatabase, and KiUnlockDispatcherDatabase(). Referenced by NtQueryInformationThread().
|
|
Definition at line 968 of file thredobj.c.
|
|
Definition at line 993 of file thredobj.c. References ASSERT_THREAD. Referenced by NtQueryInformationThread().
|
|
Definition at line 1025 of file thredobj.c. References ASSERT, ASSERT_THREAD, DISPATCH_LEVEL, KiLockDispatcherDatabase, KiReadyThread(), and KiUnlockDispatcherDatabase(). Referenced by PspCreateThread().
|
|
Definition at line 1079 of file thredobj.c. References ASSERT, ASSERT_THREAD, DISPATCH_LEVEL, KiLockDispatcherDatabase, KiUnlockDispatcherDatabase(), KiWaitTest(), and RESUME_INCREMENT. Referenced by NtResumeThread(), and PspCreateThread().
|
|
Definition at line 1153 of file thredobj.c. References _KTHREAD::Affinity, ASSERT, DISPATCH_LEVEL, FALSE, KeGetCurrentPrcb, KeGetCurrentThread, KiLockDispatcherDatabase, KiSelectNextThread(), KiUnlockDispatcherDatabase(), NULL, Standby, _KTHREAD::State, _KTHREAD::SystemAffinityActive, and _KTHREAD::UserAffinity. Referenced by CmpConfigureProcessors(), CmpInitializeMachineDependentConfiguration(), Ke386CallBios(), KeConnectInterrupt(), KeDisconnectInterrupt(), KeSetSystemTime(), KeSetup80387OrEmulate(), and KiInitMachineDependent().
|
|
Definition at line 1218 of file thredobj.c. References _KMUTANT::Abandoned, _KMUTANT::ApcDisable, ASSERT, DISPATCH_LEVEL, _KMUTANT::Header, KeBugCheckEx(), KeGetCurrentThread, KiLockDispatcherDatabase, KiRundownChannel(), KiUnlockDispatcherDatabase(), KiWaitTest(), MUTANT_INCREMENT, _KMUTANT::MutantListEntry, _KTHREAD::MutantListHead, NULL, _KMUTANT::OwnerThread, _DISPATCHER_HEADER::SignalState, TRUE, and _DISPATCHER_HEADER::WaitListHead. Referenced by PspExitThread().
|
|
Definition at line 1302 of file thredobj.c. References _KPROCESS::Affinity, ASSERT, ASSERT_THREAD, ClearMember, DISPATCH_LEVEL, FALSE, INVALID_AFFINITY_SET, KeBugCheck(), KiDispatcherReadyListHead, KiLockDispatcherDatabase, KiProcessorBlock, KiReadySummary, KiReadyThread(), KiRequestDispatchInterrupt, KiSelectNextThread(), KiUnlockDispatcherDatabase(), NULL, Ready, Running, Standby, and _KTHREAD::State. Referenced by NtSetInformationProcess(), NtSetInformationThread(), and PspApplyJobLimitsToProcess().
|
|
Definition at line 1532 of file thredobj.c. References abs, ASSERT, ASSERT_THREAD, _KPROCESS::BasePriority, DISPATCH_LEVEL, FALSE, Increment, KiLockDispatcherDatabase, KiSetPriorityThread(), KiUnlockDispatcherDatabase(), and _KPROCESS::ThreadQuantum. Referenced by ExpCreateWorkerThread(), ExpWorkerThreadBalanceManager(), and NtSetInformationThread().
|
|
Definition at line 1674 of file thredobj.c. References ASSERT, ASSERT_THREAD, DISPATCH_LEVEL, KiLockDispatcherDatabase, and KiUnlockDispatcherDatabase(). Referenced by NtSetInformationProcess(), and NtSetInformationThread().
|
|
Definition at line 1735 of file thredobj.c. References ASSERT, KeNumberProcessors, KiLockDispatcherDatabase, KiUnlockDispatcherDatabase(), MAXIMUM_PROCESSORS, and _KPROCESS::ThreadSeed. Referenced by NtSetInformationThread().
|
|
Definition at line 1799 of file thredobj.c. References _KTHREAD::EnableStackSwap, and KeGetCurrentThread. Referenced by ExpWorkerThread(), xxxDestroyThreadInfo(), and xxxInterSendMsgEx().
|
|
Definition at line 1838 of file thredobj.c. References ASSERT, ASSERT_THREAD, DISPATCH_LEVEL, FALSE, KiLockDispatcherDatabase, KiSetPriorityThread(), KiUnlockDispatcherDatabase(), and _KPROCESS::ThreadQuantum. Referenced by FsRtlWorkerThread(), KeBalanceSetManager(), KeBoostCurrentThread(), KeSwapProcessOrStack(), KiInitializeKernel(), MiDereferenceSegmentThread(), MiMappedPageWriter(), MiModifiedPageWriter(), MmZeroPageThread(), NtSetInformationThread(), PspExitThread(), and zzzSetWindowsHookEx().
|
|
Definition at line 1467 of file thredobj.c. References _KTHREAD::Affinity, ASSERT, DISPATCH_LEVEL, KeActiveProcessors, KeGetCurrentPrcb, KeGetCurrentThread, KiLockDispatcherDatabase, KiSelectNextThread(), KiUnlockDispatcherDatabase(), NULL, Standby, _KTHREAD::State, _KTHREAD::SystemAffinityActive, and TRUE. Referenced by CmpConfigureProcessors(), CmpInitializeMachineDependentConfiguration(), Ke386CallBios(), KeConnectInterrupt(), KeDisconnectInterrupt(), KeSetSystemTime(), KeSetup80387OrEmulate(), and KiInitMachineDependent().
|
|
Definition at line 1912 of file thredobj.c. References ASSERT, ASSERT_THREAD, DISPATCH_LEVEL, ExRaiseStatus(), FALSE, KiInsertQueueApc(), KiLockDispatcherDatabase, KiUnlockDispatcherDatabase(), and RESUME_INCREMENT. Referenced by NtSuspendThread(), and PspCreateThread().
|
|
Definition at line 1996 of file thredobj.c. References ASSERT, BALANCE_INCREMENT, DISPATCH_LEVEL, ExWorkerQueue, FALSE, _KEVENT::Header, HyperCriticalWorkQueue, Increment, KeGetCurrentThread, KiActivateWaiterQueue(), KiInsertQueue(), KiLockDispatcherDatabase, KiProcessOutSwapListHead, KiRundownThread, KiSwapEvent, KiSwapThread(), KiWaitTest(), _WORK_QUEUE_ITEM::List, NULL, ProcessInTransition, PsReaperActive, PsReaperListHead, PsReaperWorkItem, _DISPATCHER_HEADER::SignalState, _KPROCESS::StackCount, _KPROCESS::State, _KPROCESS::SwapListEntry, Terminated, _ETHREAD::ThreadListEntry, _KPROCESS::ThreadListHead, TRUE, and _DISPATCHER_HEADER::WaitListHead. Referenced by PspExitThread().
|
|
Definition at line 2121 of file thredobj.c. References _KTHREAD::Alerted, _KAPC_STATE::ApcListHead, _KTHREAD::ApcQueueLock, _KTHREAD::ApcState, ASSERT, DISPATCH_LEVEL, FALSE, KeGetCurrentThread, KiLockDispatcherDatabase, KiUnlockDispatcherDatabase(), TRUE, _KAPC_STATE::UserApcPending, and UserMode. Referenced by KiDeliverApc(), and NtTestAlert().
|
|
Definition at line 2190 of file thredobj.c. References ASSERT, DISPATCH_LEVEL, _KTHREAD::FreezeCount, _KSEMAPHORE::Header, KeGetCurrentThread, KeLeaveCriticalRegion, KiLockDispatcherDatabase, KiUnlockDispatcherDatabase(), KiWaitTest(), RESUME_INCREMENT, _DISPATCHER_HEADER::SignalState, _KTHREAD::SuspendCount, _KTHREAD::SuspendSemaphore, and _KPROCESS::ThreadListHead. Referenced by DbgkpResumeProcess().
|