KeAcquireInStackQueuedSpinLockForDpc routine

The KeAcquireInStackQueuedSpinLockForDpc routine acquires a queued spin lock for a threaded DPC.

Syntax

VOID KeAcquireInStackQueuedSpinLockForDpc(
  _Inout_ PKSPIN_LOCK         SpinLock,
  _Out_   PKLOCK_QUEUE_HANDLE LockHandle
);

Parameters

Return value

None.

Remarks

A CustomThreadedDpc routine can use KeAcquireInStackQueuedSpinLockForDpc to acquire a queued spin lock. If CustomThreadedDpc is executing at IRQL = PASSIVE_LEVEL, KeAcquireInStackQueuedSpinLockForDpc raises the current IRQL to DISPATCH_LEVEL. If CustomThreadedDpc is already executing at IRQL = DISPATCH_LEVEL, KeAcquireInStackQueuedSpinLockForDpc does not change the current IRQL.

For more information about queued spin locks, see Queued Spin Locks.

Call KeReleaseInStackQueuedSpinLockForDpc to release the spin lock that KeAcquireInStackQueuedSpinLockForDpc acquired.

Requirements

Target platform

Universal

Version

Available starting with Windows Vista.

Header

Wdm.h (include Wdm.h, Ntddk.h, or Ntifs.h)

Library

NtosKrnl.lib

DLL

NtosKrnl.exe

IRQL

See Remarks section.

DDI compliance rules

HwStorPortProhibitedDDIs

See also

CustomThreadedDpc

KLOCK_QUEUE_HANDLE

KeInitializeSpinLock

KeReleaseInStackQueuedSpinLockForDpc

 

 

Send comments about this topic to Microsoft