MmFreePagesFromMdl function (wdm.h)

The MmFreePagesFromMdl routine frees all the physical pages that are described by an MDL that was created by the MmAllocatePagesForMdl routine.

Syntax

void MmFreePagesFromMdl(
  [in] PMDL MemoryDescriptorList
);

Parameters

[in] MemoryDescriptorList

Pointer to an MDL that was created by MmAllocatePagesForMdl.

Return value

None

Remarks

MmFreePagesFromMdl can only be used to free the memory pages that are described by an MDL that was created by MmAllocatePagesForMdl.

After calling MmFreePagesFromMdl, the caller must also call ExFreePool to release the memory that was allocated for the MDL structure.

MmFreePagesFromMdl runs at IRQL <= APC_LEVEL. For Windows Server 2008 and later versions of the Windows operating system, you can also call this routine at DISPATCH_LEVEL. However, you can improve driver performance by calling at IRQL <= APC_LEVEL.

Requirements

Requirement Value
Minimum supported client Available starting with Windows 2000.
Target Platform Universal
Header wdm.h (include Wdm.h, Ntddk.h, Ntifs.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL See Remarks section.
DDI compliance rules HwStorPortProhibitedDDIs(storport), IrqlMmApcLte(wdm)

See also

ExFreePool

MmAllocatePagesForMdl