NdisReleaseSpinLock

This function releases a spin lock that was acquired in a preceding call to the NdisAcquireSpinLock function.

At a Glance

Header file: Ndis.h
Windows CE versions: 2.0 and later

Syntax

VOID NdisReleaseSpinLock( IN PNDIS_SPIN_LOCK SpinLock );

Parameters

SpinLock
Pointer to the acquired spin lock to be released.

Remarks

In Windows CE, NDIS spin locks are implemented using critical sections.

A driver must initialize its spin lock with the NdisAllocateSpinLock function before it calls any other NdisXXXSpinLock function to access the resources protected by that spin lock.

A driver must call the NdisAcquireSpinLock function to acquire the spin lock before it can call this function. Each call to NdisAcquireSpinLock requires a reciprocal call to this function before the driver can call NdisAcquireSpinLock again.

This function restores the original IRQL at which its caller was running before the call to NdisAcquireSpinLock.

Any spin lock acquired with NdisAcquireSpinLock must be released with this function. Any spin lock acquired with the NdisDprAcquireSpinLock function must be released with the NdisDprReleaseSpinLock function.

A driver that calls this function is running at IRQL DISPATCH_LEVEL.

See Also

NdisAcquireSpinLock, NdisDprAcquireSpinLock