функция обратного вызова DXGKDDI_VALIDATESUBMITCOMMAND (d3dkmddi.h)

Функция минипорта в режиме ядра (KMD) DXGKDDI_VALIDATESUBMITCOMMAND проверяет данные частного драйвера, которые драйвер пользовательского режима (UMD) передает в вызовах D3DKMTSubmitCommand или D3DKMTSubmitCommandToHwQueue.

Синтаксис

DXGKDDI_VALIDATESUBMITCOMMAND DxgkddiValidatesubmitcommand;

NTSTATUS DxgkddiValidatesubmitcommand(
  IN_CONST_HANDLE hContext,
  INOUT_PDXGKARG_VALIDATESUBMITCOMMAND pArgs
)
{...}

Параметры

hContext

[in] Дескриптор контекста мини-порта устройства, который KMD вернул из DxgkDdiAddDevice.

pArgs

[вход/выход] Указатель на структуру DXGKARG_VALIDATESUBMITCOMMAND , содержащую сведения, необходимые для проверки команды отправки.

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

DXGKDDI_VALIDATESUBMITCOMMAND возвращает значение NTSTATUS , например одно из следующих значений:

  • STATUS_SUCCESS
  • STATUS_INVALID_USER_BUFFER

Комментарии

Когда KMD реализует этот обратный вызов, KMD всегда проверяет частные данные, передаваемые в вызовах:

Этот обратный вызов вызывается, только если размер частного драйвера (DmaBufferPrivateDataSize) в D3DKMTSubmitCommand не равен нулю.

Он вызывается один раз для D3DKMTSubmitCommand или D3DKMTSubmitCommandToHwQueue.

KMD не должен предполагать, что этот обратный вызов вызывается в контексте процесса, который вызвал D3DKMTSubmitCommand. Таким образом, UMD не должен передавать никакие указатели или дескрипторы пользовательского режима в своих личных данных.

Этот обратный вызов вызывается перед отправкой команды в очередь программного обеспечения планировщика GPU для выполнения.

Требования

Требование Значение
Минимальная версия клиента Windows 10, версия 1809
Верхняя часть d3dkmddi.h
IRQL PASSIVE_LEVEL

См. также раздел

DXGKARG_VALIDATESUBMITCOMMAND