NDIS Spin Lock Interface (NDIS 5.1)

Note NDIS 5. x has been deprecated and is superseded by NDIS 6. x. For new NDIS driver development, see Network Drivers Starting with Windows Vista. For information about porting NDIS 5. x drivers to NDIS 6. x, see Porting NDIS 5.x Drivers to NDIS 6.0.

This section describes the functions for the NDIS spin lock interface.

NdisAllocateSpinLockinitializes a variable of type NDIS_SPIN_LOCK, used to synchronize access to resources shared among non-ISR driver functions.

NdisFreeSpinLockreleases a spin lock initialized in a preceding call to NdisAllocateSpinLock.

NdisAcquireSpinLockacquires a spin lock to protect access to shared resources between non-ISR driver functions in an SMP-safe way. Miniport drivers that are running at IRQL < DISPATCH_LEVEL call this function to acquire a spin lock.

NdisReleaseSpinLockreleases a spin lock previously acquired by calling NdisAcquireSpinLock.

NdisDprAcquireSpinLockacquires a spin lock at IRQL = DISPATCH_LEVEL. Protects access to shared resources between non-ISR driver functions in an SMP-safe way. Faster than calling NdisAcquireSpinLockfor driver functions running at IRQL = DISPATCH_LEVEL.

NdisDprReleaseSpinLockreleases a spin lock previously acquired by calling NdisDprAcquireSpinLock.

This section includes:

NdisAcquireSpinLock (NDIS 5.1)

NdisAllocateSpinLock (NDIS 5.1)

NdisDprAcquireSpinLock (NDIS 5.1)

NdisDprReleaseSpinLock (NDIS 5.1)

NdisFreeSpinLock (NDIS 5.1)

NdisReleaseSpinLock (NDIS 5.1)

Send comments about this topic to Microsoft