функция обратного вызова 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 |