#include "ki.h"
Go to the source code of this file.
Defines | |
#define | TestForAlertPending(Alertable) |
Functions | |
VOID | KiAdjustQuantumThread (IN PKTHREAD Thread) |
NTSTATUS | KeDelayExecutionThread (IN KPROCESSOR_MODE WaitMode, IN BOOLEAN Alertable, IN PLARGE_INTEGER Interval) |
NTSTATUS | KeWaitForMultipleObjects (IN ULONG Count, IN PVOID Object[], IN WAIT_TYPE WaitType, IN KWAIT_REASON WaitReason, IN KPROCESSOR_MODE WaitMode, IN BOOLEAN Alertable, IN PLARGE_INTEGER Timeout OPTIONAL, IN PKWAIT_BLOCK WaitBlockArray OPTIONAL) |
NTSTATUS | KeWaitForSingleObject (IN PVOID Object, IN KWAIT_REASON WaitReason, IN KPROCESSOR_MODE WaitMode, IN BOOLEAN Alertable, IN PLARGE_INTEGER Timeout OPTIONAL) |
NTSTATUS | KiSetServerWaitClientEvent (IN PKEVENT ServerEvent, IN PKEVENT ClientEvent, IN ULONG WaitMode) |
PLARGE_INTEGER FASTCALL | KiComputeWaitInterval (IN PLARGE_INTEGER OriginalTime, IN PLARGE_INTEGER DueTime, IN OUT PLARGE_INTEGER NewTime) |
|
Value:
Definition at line 57 of file wait.c. Referenced by KeDelayExecutionThread(), KeWaitForMultipleObjects(), and KeWaitForSingleObject(). |
|
Definition at line 140 of file wait.c. References _KTHREAD::Alertable, APC_LEVEL, _KTHREAD::ApcState, ASSERT, _KTHREAD::BasePriority, DelayExecution, DISPATCH_LEVEL, _KTIMER::DueTime, FALSE, _KTIMER::Header, KeGetCurrentPrcb, KeGetCurrentThread, _KAPC_STATE::KernelApcPending, KiActivateWaiterQueue(), KiComputeWaitInterval(), KiFindReadyThread(), KiInsertTreeTimer(), KiInsertWaitList, KiLockDispatcherDatabase, KiReadyThread(), KiSetPriorityThread(), KiSwapThread(), KiUnlockDispatcherDatabase(), _KTHREAD::NextProcessor, _KWAIT_BLOCK::NextWaitBlock, NTSTATUS(), NULL, _KTHREAD::Preempted, _KTHREAD::Priority, _KTHREAD::PriorityDecrement, _KAPC_STATE::Process, _KTHREAD::Quantum, _KTHREAD::Queue, _KTHREAD::State, TestForAlertPending, _KPROCESS::ThreadQuantum, _KTHREAD::Timer, TIMER_WAIT_BLOCK, TRUE, _KTHREAD::WaitBlock, _KTHREAD::WaitBlockList, Waiting, _KTHREAD::WaitIrql, _KWAIT_BLOCK::WaitListEntry, _DISPATCHER_HEADER::WaitListHead, _KTHREAD::WaitMode, _KTHREAD::WaitNext, _KTHREAD::WaitReason, _KTHREAD::WaitStatus, and _KTHREAD::WaitTime. Referenced by CcPurgeCacheSection(), IoCancelThreadIo(), IopCancelAlertedRequest(), IopStartNetworkForRemoteBoot(), KiInitMachineDependent(), MemPrintFlush(), MemPrintWriteThread(), MiAllocateContiguousMemory(), MiCheckControlAreaStatus(), MiCheckSystemTrimEndCriteria(), MiCleanSection(), MiCloneProcessAddressSpace(), MiDispatchFault(), MiEmptyWorkingSet(), MiFlushAllPages(), MiFlushSectionInternal(), MiMakeOutswappedPageResident(), MiModifiedPageWriter(), MiModifiedPageWriterWorker(), MiPurgeImageSection(), MiRemoveUnusedSegments(), MiResolveProtoPteFault(), MiWriteComplete(), MmAccessFault(), MmCopyToCachedPage(), MmFlushSection(), MmFlushVirtualMemory(), MmGatherMemoryForHibernate(), MmGetSystemRoutineAddress(), MmRemovePhysicalMemory(), MmShutdownSystem(), MmWorkingSetManager(), NtCancelIoFile(), NtCreateSection(), NtDelayExecution(), Reader(), ReaderTurnedWriter(), UserBeep(), UserSleep(), Writer(), and xxxLW_LoadFonts().
|
|
Definition at line 395 of file wait.c. References _KTHREAD::Alertable, APC_LEVEL, _KTHREAD::ApcState, ASSERT, Count, DISPATCH_LEVEL, _KTIMER::DueTime, ExRaiseStatus(), FALSE, _KTIMER::Header, _KMUTANT::Header, Index, KeBugCheck(), KeGetCurrentThread, _KAPC_STATE::KernelApcPending, KiActivateWaiterQueue(), KiAdjustQuantumThread(), KiComputeWaitInterval(), KiInsertTreeTimer(), KiInsertWaitList, KiLockDispatcherDatabase, KiSwapThread(), KiUnlockDispatcherDatabase(), KiWaitSatisfyAll(), KiWaitSatisfyMutant, KiWaitSatisfyOther, KWAIT_REASON, MutantObject, _KWAIT_BLOCK::NextWaitBlock, NTSTATUS(), NULL, _KWAIT_BLOCK::Object, _KMUTANT::OwnerThread, _KTHREAD::Queue, QueueObject, _DISPATCHER_HEADER::SignalState, _KTHREAD::State, TestForAlertPending, _KWAIT_BLOCK::Thread, THREAD_WAIT_OBJECTS, _KTHREAD::Timer, TIMER_WAIT_BLOCK, TRUE, _DISPATCHER_HEADER::Type, USHORT, _KTHREAD::WaitBlock, _KTHREAD::WaitBlockList, Waiting, _KTHREAD::WaitIrql, _KWAIT_BLOCK::WaitKey, _KWAIT_BLOCK::WaitListEntry, _DISPATCHER_HEADER::WaitListHead, _KTHREAD::WaitMode, _KTHREAD::WaitNext, _KTHREAD::WaitReason, _KTHREAD::WaitStatus, _KTHREAD::WaitTime, and _KWAIT_BLOCK::WaitType. Referenced by CmpFileWrite(), ExpWorkerThreadBalanceManager(), InitiateWin32kCleanup(), KeBalanceSetManager(), MemPrintWriteThread(), MiDereferenceSegmentThread(), MiModifiedPageWriterWorker(), MmZeroPageThread(), NtWaitForMultipleObjects(), RawInputThread(), SmbTraceThreadEntry(), xxxMsgWaitForMultipleObjects(), xxxPollAndWaitForSingleObject(), and xxxSleepTask().
|
|
Definition at line 810 of file wait.c. References _KTHREAD::Alertable, APC_LEVEL, _KTHREAD::ApcState, ASSERT, DISPATCH_LEVEL, _KTIMER::DueTime, ExRaiseStatus(), FALSE, _KTIMER::Header, _KMUTANT::Header, KeGetCurrentThread, _KAPC_STATE::KernelApcPending, KiActivateWaiterQueue(), KiAdjustQuantumThread(), KiComputeWaitInterval(), KiInsertTreeTimer(), KiInsertWaitList, KiLockDispatcherDatabase, KiSwapThread(), KiUnlockDispatcherDatabase(), KiWaitSatisfyMutant, KiWaitSatisfyOther, KiWaitSingleCallData, KWAIT_REASON, MutantObject, _KWAIT_BLOCK::NextWaitBlock, NTSTATUS(), NULL, _KWAIT_BLOCK::Object, _KMUTANT::OwnerThread, _KTHREAD::Queue, QueueObject, RECORD_CALL_DATA, _DISPATCHER_HEADER::SignalState, _KTHREAD::State, TestForAlertPending, _KTHREAD::Timer, TIMER_WAIT_BLOCK, TRUE, _DISPATCHER_HEADER::Type, _KTHREAD::WaitBlock, _KTHREAD::WaitBlockList, Waiting, _KTHREAD::WaitIrql, _KWAIT_BLOCK::WaitKey, _KWAIT_BLOCK::WaitListEntry, _DISPATCHER_HEADER::WaitListHead, _KTHREAD::WaitMode, _KTHREAD::WaitNext, _KTHREAD::WaitReason, _KTHREAD::WaitStatus, _KTHREAD::WaitTime, and _KWAIT_BLOCK::WaitType. Referenced by CcCanIWrite(), CcInitializeCacheMap(), CcSetValidData(), CcWaitForCurrentLazyWriterActivity(), CcWaitOnActiveCount(), CcZeroData(), CmpFileRead(), CmpOpenHiveFiles(), DoResourceTest(), ExAllocatePool(), ExFreePool(), ExLockHandleTableEntry(), ExLockPool(), ExpGetProcessInformation(), ExpWaitForResource(), ExpWaitForResourceDdk(), ExUnregisterCallback(), FsRecGetDeviceSectors(), FsRecGetDeviceSectorSize(), FsRecLoadFileSystem(), FsRecReadBlock(), FsRtlBalanceReads(), FsRtlDeregisterUncProvider(), FsRtlGetFileSize(), FsRtlRegisterUncProvider(), FsRtlSetFileSize(), FsRtlSyncVolumes(), FsRtlWaitOnIrp(), GetDeviceChangeInfo(), HalpEnableAutomaticDriveLetterAssignment(), HalpGetFullGeometry(), HalpIsOldStyleFloppy(), HalpNextMountLetter(), HalpQueryDriveLayout(), HalpQueryPartitionType(), HalpSetMountLetter(), InitiateWin32kCleanup(), IoCancelFileOpen(), IoFreeDumpStack(), IoGetBootDiskInformation(), IoGetDmaAdapter(), IopAcquireFileObjectLock(), IopAllocateBootResources(), IopAllocateResources(), IopCancelAlertedRequest(), IopCloseFile(), IopCompleteDumpInitialization(), IopCompleteUnloadOrDelete(), IopCreateArcNames(), IopDeleteFile(), IopFilterResourceRequirementsCall(), IopGetDumpStack(), IopGetFileName(), IopGetSetObjectId(), IopGetSetSecurityObject(), IopGetVolumeId(), IopHardErrorThread(), IopHardwareProfileBeginTransition(), IopInvalidateVolumesForDevice(), IopLegacyResourceAllocation(), IopLoadFileSystemDriver(), IopLockMountedDeviceForRemove(), IopMountVolume(), IoPnPDeliverServicePowerNotification(), IopParseDevice(), IopProcessStartDevices(), IopProcessStartDevicesWorker(), IopQueryConflictList(), IopQueryRebalanceWorker(), IopQueryXxxInformation(), IopReallocateResources(), IopRebalance(), IopRequestHwProfileChangeNotification(), IopSendMessageToTrackService(), IopSetRemoteLink(), IopSynchronousApiServiceTail(), IopSynchronousCall(), IopSynchronousServiceTail(), IopUnlockMountedDeviceForRemove(), IopWaitForBootDevicesDeleted(), IopWaitForBootDevicesStarted(), IopWarmEjectDevice(), IoReleaseRemoveLockAndWaitEx(), IoReportTargetDeviceChange(), IoSetInformation(), IoShutdownSystem(), IoSynchronousInvalidateDeviceRelations(), IoVerifyVolume(), IovpInternalCompleteAfterWait(), IovpThrowBogusSynchronousIrp(), KeSetAutoAlignmentThread(), KeSwapProcessOrStack(), KiSetServerWaitClientEvent(), KiSuspendThread(), LfsCloseLogFile(), LfsFlushLbcb(), LfsWriteLogRecordIntoLogPage(), LpcpExtendPortZone(), LpcRequestWaitReplyPort(), MiCheckControlAreaStatus(), MiCheckForCrashDump(), MiCheckPageFilePath(), MiCheckPurgeAndUpMapCount(), MiCleanSection(), MiCreateImageFileMap(), MiDereferenceSession(), MiEmptyAllWorkingSets(), MiEnsureAvailablePageOrWait(), MiFlushSectionInternal(), MiGatherPagefilePages(), MiIssuePageExtendRequest(), MiLoadSystemImage(), MiLookupPsLoadedModule(), MiMakeOutswappedPageResident(), MiMapImageHeaderInHyperSpace(), MiMappedPageWriter(), MiModifiedPageWriterWorker(), MiWaitForInPageComplete(), MmAddVerifierThunks(), MmCleanProcessAddressSpace(), MmCreateSection(), MmGetVerifierInformation(), MmLockPagableSectionByHandle(), MmPurgeSection(), MmSetVerifierInformation(), MmShutdownSystem(), MmUnloadSystemImage(), NtDuplicateObject(), NtGetContextThread(), NtLoadDriver(), NtNotifyChangeMultipleKeys(), NtQueryInformationFile(), NtQueryInformationProcess(), NtReplyWaitReceivePort(), NtReplyWaitReceivePortEx(), NtReplyWaitReplyPort(), NtRequestWaitReplyPort(), NtSecureConnectPort(), NtSetContextThread(), NtSetInformationFile(), NtSetLdtEntries(), NtSignalAndWaitForSingleObject(), NtStartProfile(), NtStopProfile(), NtUnloadDriver(), NtWaitForSingleObject(), ObFindHandleForObject(), ObInitProcess(), ObKillProcess(), ObWaitForSingleObject(), PsLockProcess(), PspQueryDescriptorThread(), PspQueryLdtInformation(), PspSetLdtInformation(), PspSetLdtSize(), QueuePowerRequest(), RawInputThread(), RequestDeviceChange(), RtlReleaseRemoveLockAndWait(), RtlVolumeDeviceToDosName(), SmbTraceCompleteRdr(), SmbTraceCompleteSrv(), SmbTraceStart(), SmbTraceStop(), UdfAddVmcbMapping(), UdfPerformDevIoCtrl(), UdfPnpQueryRemove(), UdfPnpRemove(), UdfPnpSurpriseRemove(), UdfReadSectors(), UdfRemoveVmcbMapping(), UdfVmcbLbnToVbn(), UdfVmcbVbnToLbn(), UdfWaitSync(), VdmDispatchStringIoToHandler(), VdmQueryDirectoryFile(), xHalExamineMBR(), xHalGetPartialGeometry(), xHalIoClearPartitionTable(), xHalIoReadPartitionTable(), xHalIoSetPartitionInformation(), xHalIoWritePartitionTable(), xxxDesktopThread(), xxxInitInput(), xxxInitTerminal(), xxxRemoteDisconnect(), and xxxSleepThread().
|
|
Definition at line 79 of file wait.c. References KeGetCurrentPrcb, KiFindReadyThread(), KiSetPriorityThread(), NULL, Standby, _KTHREAD::State, _KPROCESS::ThreadQuantum, TIME_CRITICAL_PRIORITY_BOUND, and WAIT_QUANTUM_DECREMENT. Referenced by KeWaitForMultipleObjects(), and KeWaitForSingleObject().
|
|
Definition at line 1175 of file wait.c. Referenced by KeDelayExecutionThread(), KeRemoveQueue(), KeWaitForMultipleObjects(), and KeWaitForSingleObject().
|
|
Definition at line 1126 of file wait.c. References EVENT_INCREMENT, FALSE, KeSetEvent(), KeWaitForSingleObject(), KPROCESSOR_MODE, NULL, TRUE, and WrEventPair.
|