Previous Next

MmBuildMdlForNonPagedPool

The MmBuildMdlForNonPagedPool routine receives an MDL that specifies a virtual memory buffer in nonpaged pool, and updates it to describe the underlying physical pages.

VOID 
  MmBuildMdlForNonPagedPool(
    IN OUT PMDL  MemoryDescriptorList
    );

Parameters

MemoryDescriptorList
Pointer to an MDL that specifies a virtual memory buffer in nonpaged pool. Use the IoAllocateMdl routine to create an MDL for a given buffer.

Return Value

None

Headers

Declared in wdm.h and ntddk.h. Include wdm.h or ntddk.h.

Comments

The MDL virtual address that is input must be within the nonpaged portion of system space, such as memory allocated by ExAllocatePoolWithTag with PoolType = NonPagedPool.

Callers of MmBuildMdlForNonPagedPool must be running at IRQL <= DISPATCH_LEVEL.

See Also

ExAllocatePoolWithTag, IoAllocateMdl, MmCreateMdl, MmInitializeMdl, MmIsNonPagedSystemAddressValid, MmMapIoSpace, MmSizeOfMdl