Expand Minimize

KeReleaseSpinLock routine

The KeReleaseSpinLock routine releases a spin lock and restores the original IRQL at which the caller was running.

Syntax


VOID KeReleaseSpinLock(
  _Inout_  PKSPIN_LOCK SpinLock,
  _In_     KIRQL NewIrql
);

Parameters

SpinLock [in, out]

Pointer to a spin lock for which the caller provides the storage.

NewIrql [in]

Specifies the IRQL value saved from the preceding call to KeAcquireSpinLock.

Return value

None

Remarks

This call is a reciprocal to KeAcquireSpinLock. The input NewIrql value must be the OldIrql returned by KeAcquireSpinLock.

For more information about spin locks, see Spin Locks.

Callers of this routine are running at IRQL = DISPATCH_LEVEL. On return from KeReleaseSpinLock, IRQL is restored to the NewIrql value.

Requirements

Version

Available starting with Windows 2000.

Header

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

Library

Hal.lib

IRQL

DISPATCH_LEVEL (see Remarks section)

DDI compliance rules

IrqlKeReleaseSpinLock, MarkingQueuedIrps, SpinLock, SpinLockDpc, SpinlockRelease, SpinLockSafe, ReqSendWhileSpinlock, Spinlock(kmdf), SpinlockDpc(kmdf), SpinlockRelease(kmdf), HwStorPortProhibitedDDIs, IrqlKeReleaseSpinLock(storport), SpinLock(storport), SpinLockDpc(storport), SpinLockRelease(storport), SpinLockSafe(storport)

See also

KeAcquireSpinLock
KeInitializeSpinLock

 

 

Send comments about this topic to Microsoft

Show:
© 2014 Microsoft