Bewerken

Delen via


ExReInitializeRundownProtectionCacheAware function (wdm.h)

The ExReInitializeRundownProtectionCacheAware routine reinitializes an EX_RUNDOWN_REF_CACHE_AWARE structure after the associated object is run down.

Syntax

void ExReInitializeRundownProtectionCacheAware(
  [in, out] PEX_RUNDOWN_REF_CACHE_AWARE RunRefCacheAware
);

Parameters

[in, out] RunRefCacheAware

A pointer to a EX_RUNDOWN_REF_CACHE_AWARE structure that was initialized by a previous call to ExAllocateCacheAwareRundownProtection or ExInitializeRundownProtectionCacheAware. The cache-aware 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.

ExReInitializeRundownProtectionCacheAware enables a previously used EX_RUNDOWN_REF_CACHE_AWARE structure to be associated with a new object, and initializes cache-aware run-down protection on this object. After the ExReInitializeRundownProtectionCacheAware call, drivers can call ExAcquireRundownProtectionCacheAware to acquire cache-aware run-down protection on the new object.

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

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

Requirements

Requirement Value
Minimum supported server Windows Server 2003, Service Pack 1
Header wdm.h (include Wdm.h)

See also

Cache-aware run-down protection

ExAcquireRundownProtectionCacheAware

ExAcquireRundownProtectionCacheAwareEx

ExAllocateCacheAwareRundownProtection

ExFreeCacheAwareRundownProtection

ExInitializeRundownProtectionCacheAware

ExReleaseRundownProtectionCacheAware

ExReleaseRundownProtectionCacheAwareEx

ExRundownCompletedCacheAware

ExSizeOfRundownProtectionCacheAware

ExWaitForRundownProtectionReleaseCacheAware