MmPrepareMdlForReuse function (wdm.h)
The MmPrepareMdlForReuse macro releases the resources that are associated with a partial MDL so that the MDL can be reused.
Syntax
void MmPrepareMdlForReuse(
[in] PMDL MDL
);
Parameters
[in] MDL
A pointer to a partial MDL that is to be prepared for reuse.
Return value
None
Remarks
This macro is used by drivers that repeatedly use the same allocated MDL for the TargetMdl parameter in calls to the IoBuildPartialMdl routine. If, in a call to MmPrepareMdlForReuse, the specified partial MDL has an associated mapping to system address space, MmPrepareMdlForReuse releases the mapping so that the MDL can be reused.
MmPrepareMdlForReuse accepts only partial MDLs that are built by IoBuildPartialMdl. If MmPrepareMdlForReuse receives an MDL that is mapped to the system address space but was not built by IoBuildPartialMdl, MmPrepareMdlForReuse does not release the mapping.
For more information about partial MDLs, see Using MDLs.
Requirements
Requirement | Value |
---|---|
Minimum supported client | Windows 2000 |
Header | wdm.h |
IRQL | <= DISPATCH_LEVEL |
DDI compliance rules | MdlAfterReqCompletedIntIoctlA(kmdf), MdlAfterReqCompletedIoctlA(kmdf), MdlAfterReqCompletedReadA(kmdf), MdlAfterReqCompletedWriteA(kmdf) |