ExReInitializeRundownProtection function (wdm.h)

The ExReInitializeRundownProtection routine reinitializes an EX_RUNDOWN_REF structure after the associated object is run down.

Syntax

void ExReInitializeRundownProtection(
  [in, out] PEX_RUNDOWN_REF RunRef
);

Parameters

[in, out] RunRef

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.

Return value

None

Remarks

This routine is called by the driver that owns an object that resides in shared memory and that is accessed by other drivers.

ExReInitializeRundownProtection enables a previously used EX_RUNDOWN_REF structure to be associated with a new object, and initializes run-down protection on this object. After the ExReInitializeRundownProtection call, drivers can call ExAcquireRundownProtection to acquire run-down protection on the new object.

An ExReInitializeRundownProtection call must be preceded by a call to the ExWaitForRundownProtectionRelease routine that runs down the old object. Between the ExWaitForRundownProtectionRelease and ExReInitializeRundownProtection calls, the driver might call the ExRundownCompleted routine to indicate that the run down of the old object has completed.

On entry, the status information in the EX_RUNDOWN_REF structure must indicate that the old object was run down.

For more information, see Run-Down Protection.

Requirements

Requirement Value
Minimum supported client Available starting with Windows XP.
Target Platform Universal
Header wdm.h (include Wdm.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL <= APC_LEVEL

See also

EX_RUNDOWN_REF

ExAcquireRundownProtection

ExInitializeRundownProtection

ExRundownCompleted

ExWaitForRundownProtectionRelease