Previous Next

ExReleaseFastMutex

The ExReleaseFastMutex routine releases ownership of a fast mutex that was acquired with ExAcquireFastMutex or ExTryToAcquireFastMutex.

VOID 
  ExReleaseFastMutex(
    IN PFAST_MUTEX  FastMutex
    );

Parameters

FastMutex
Pointer to the fast mutex to be released.

Return Value

None

Headers

Declared in wdm.h and ntddk.h. Include wdm.h or ntddk.h.

Comments

ExReleaseFastMutex releases ownership of the given fast mutex and reenables the delivery of APCs to the current thread.

It is a programming error to call ExReleaseFastMutex with a FastMutex that was acquired using ExAcquireFastMutexUnsafe.

Callers of ExReleaseFastMutex must be running at IRQL = APC_LEVEL. In most cases the IRQL will already be set to APC_LEVEL before ExReleaseFastMutex is called. This is because ExAcquireFastMutex has already set the IRQL to the appropriate value automatically. However, if the caller changes the IRQL after ExAcquireFastMutex returns, the caller must explicitly set the IRQL to APC_LEVEL prior to calling ExReleaseFastMutex.

See Also

ExAcquireFastMutex, ExInitializeFastMutex, ExTryToAcquireFastMutex