The ExReleaseRundownProtectionEx routine releases run-down protection that the caller previously acquired by calling the ExAcquireRundownProtectionEx routine.
void ExReleaseRundownProtectionEx( PEX_RUNDOWN_REF RunRef, ULONG Count );
A pointer to an EX_RUNDOWN_REF structure that was initialized by a previous call to the ExInitializeRundownProtection routine. The run-down protection routines use this structure to track the run-down status of the associated shared object. This structure is opaque to drivers.
The amount by which to decrement to the run-down instance count of the object. For more information, see Remarks.
The RunRef parameter points to an EX_RUNDOWN_REF structure that tracks the run-down status of the associated object. This status information includes a count of the instances of run-down protection that are currently in effect on the object. The ExAcquireRundownProtectionEx and ExReleaseRundownProtectionEx routines increment and decrement this count by arbitrary amounts. Two related routines, ExAcquireRundownProtection and ExReleaseRundownProtection, increment and decrement this count by one.
As long as the run-down block itself is nonpaged, this function can be called at DISPATCH_LEVEL.
For more information, see Run-Down Protection.
|Minimum supported client||Available starting with Windows Server 2003.|
|Header||wdm.h (include Wdm.h)|
|IRQL||<= DISPATCH_LEVEL (see Remarks)|
|DDI compliance rules||HwStorPortProhibitedDDIs|