FsRtlSplitLargeMcb - NtDoc

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

BOOLEAN FsRtlSplitLargeMcb(
  [in] PLARGE_MCB Mcb,
  [in] LONGLONG   Vbn,
  [in] LONGLONG   Amount
);
View the official Windows Driver Kit DDI reference

NtDoc

No description available.

Windows Driver Kit DDI reference (nf-ntifs-_fsrtl_advanced_fcb_header-fsrtlsplitlargemcb)

FsRtlSplitLargeMcb function

Description

The FsRtlSplitLargeMcb routine inserts a hole into the mappings in a map control block (MCB).

Parameters

Mcb [in]

Pointer to the MCB structure.

Vbn [in]

Starting virtual block number (VBN) of the range of mappings to be shifted upward by Amount to make room for the hole.

Amount [in]

Number of sectors (VBNs) in the hole to be created.

Return value

FsRtlSplitLargeMcb returns TRUE if the hole was successfully created, FALSE otherwise.

Remarks

A hole is a range of unmapped VBNs that form a gap between two mappings.

If a pool allocation failure occurs, FsRtlSplitLargeMcb raises a STATUS_INSUFFICIENT_RESOURCES exception. To gain control if this pool allocation failure occurs, the driver should wrap the call to FsRtlSplitLargeMcb in a try-except or try-finally statement.

See also

FsRtlAddLargeMcbEntry

FsRtlGetNextLargeMcbEntry

FsRtlInitializeLargeMcb

FsRtlLookupLargeMcbEntry

FsRtlLookupLastLargeMcbEntry

FsRtlLookupLastLargeMcbEntryAndIndex

FsRtlNumberOfRunsInLargeMcb

FsRtlRemoveLargeMcbEntry

FsRtlTruncateLargeMcb

FsRtlUninitializeLargeMcb