NdisReleaseSpinLock

VOID
    NdisReleaseSpinLock(

        IN PNDIS_SPIN_LOCK SpinLock
        );

NdisReleaseSpinLock releases a spin lock that was acquired in a preceding call to NdisAcquireSpinLock.

Parameters

SpinLock
Points to the acquired spin lock to be released.

Comments

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

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

NdisReleaseSpinLock 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 NdisReleaseSpinLock. Any spin lock acquired with NdisDprAcquireSpinLock must be released with NdisDprReleaseSpinLock.

Callers of NdisReleaseSpinLock are running at IRQL DISPATCH_LEVEL.

See Also

NdisAcquireSpinLock, NdisAllocateSpinLock, NdisDprAcquireSpinLock