Функция MmPrepareMdlForReuse (wdm.h)

Макрос MmPrepareMdlForReuse освобождает ресурсы, связанные с частичным MDL, чтобы MDL можно было использовать повторно.

Синтаксис

void MmPrepareMdlForReuse(
  [in] PMDL MDL
);

Параметры

[in] MDL

Указатель на частичный MDL, который должен быть подготовлен к повторному использованию.

Возвращаемое значение

None

Remarks

Этот макрос используется драйверами, которые неоднократно используют один и тот же выделенный MDL для параметра TargetMdl в вызовах подпрограммы IoBuildPartialMdl . Если при вызове MmPrepareMdlForReuse указанная частичная MDL имеет сопоставление с системным адресным пространством, MmPrepareMdlForReuse освобождает сопоставление, чтобы MDL можно было использовать повторно.

MmPrepareMdlForReuse принимает только частичные многомерные списки, созданные IoBuildPartialMdl. Если MmPrepareMdlForReuse получает MDL, сопоставленный с адресным пространством системы, но не был создан IoBuildPartialMdl, MmPrepareMdlForReuse не освобождает сопоставление.

Дополнительные сведения о частичных списках MDL см. в разделе Использование библиотек MDL.

Требования

Требование Значение
Минимальная версия клиента Windows 2000
Верхняя часть wdm.h
IRQL <= DISPATCH_LEVEL
Правила соответствия DDI MdlAfterReqCompletedIntIoctlA(kmdf), MdlAfterReqCompletedIoctlA(kmdf), MdlAfterReqCompletedReadA(kmdf), MdlAfterReqCompletedWriteA(kmdf)