FsRtlTeardownPerStreamContexts - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
// ntifs.h

VOID FsRtlTeardownPerStreamContexts(
  [in] PFSRTL_ADVANCED_FCB_HEADER AdvancedHeader
);

View the official Windows Driver Kit DDI reference

NtDoc

No description available.

Windows Driver Kit DDI reference (nf-ntifs-fsrtlteardownperstreamcontexts)

FsRtlTeardownPerStreamContexts function

Description

The FsRtlTeardownPerStreamContexts routine frees all per-stream context structures associated with a given FSRTL_ADVANCED_FCB_HEADER structure.

Parameters

AdvancedHeader [in]

Pointer to the FSRTL_ADVANCED_FCB_HEADER structure.

Remarks

File systems call FsRtlTeardownPerStreamContexts to free all per-stream context structures associated with a given FSRTL_ADVANCED_FCB_HEADER structure. When a file system tears down the stream context object for a file stream, it must call FsRtlTeardownPerStreamContexts, which in turn calls the FreeCallback routines of all per-stream context structures associated with the file stream.

To avoid conflicts in synchronization, the FsRtlTeardownPerStreamContexts routine releases the lock for the per file context objects before calling FreeCallback. This avoids blocking access to the to the per file context objects by the filter for own list operations, such as removal with FsRtlRemovePerStreamContext.

See also

FSRTL_ADVANCED_FCB_HEADER

FSRTL_PER_STREAM_CONTEXT

FsRtlGetPerStreamContextPointer

FsRtlInitPerStreamContext

FsRtlInsertPerStreamContext

FsRtlLookupPerStreamContext

FsRtlRemovePerStreamContext

FsRtlSetupAdvancedHeader

FsRtlSupportsPerStreamContexts

Tracking Per-Stream Context in a Legacy File System Filter Driver