Compartilhar via


DXGKDDI_RESETHWENGINE função de retorno de chamada (d3dkmddi.h)

Dxgkrnl chama a função DxgkDdiResetHwEngine do driver de miniporto de exibição (KMD) quando uma redefinição do mecanismo de GPU é necessária.

Sintaxe

DXGKDDI_RESETHWENGINE DxgkddiResethwengine;

NTSTATUS DxgkddiResethwengine(
  IN_CONST_HANDLE hAdapter,
  INOUT_PDXGKARG_RESETHWENGINE pResetHwEngine
)
{...}

Parâmetros

hAdapter

[in] Um identificador para o bloco de contexto associado a um adaptador de exibição. O KMD forneceu anteriormente esse identificador para Dxgkrnl no parâmetro de saída MiniportDeviceContext da função DxgkDdiAddDevice .

pResetHwEngine

[entrada/saída] Ponteiro para uma estrutura DXGKARG_RESETHWENGINE que contém informações para redefinir o mecanismo de hardware.

Retornar valor

DxgkDdiResetHwEngine retornará STATUS_SUCCESS se a operação for bem-sucedida. Caso contrário, ele deverá retornar um código de erro NTSTATUS apropriado.

Comentários

Uma implementação DxgkDdiResetHwEngine deve chamar o retorno de chamada DxgkCbInvalidateHwContext para informar o sistema operacional de todos os contextos em execução que foram afetados pela operação de redefinição do mecanismo de GPU. O sistema operacional invalidará esses dispositivos de contexto (defina-os em erro) e não executará envios futuros.

O mecanismo ainda não é considerado retomado depois que DxgkDdiResetHwEngine é chamado, portanto, os contextos que não foram invalidados não têm permissão para serem enviados. O sistema operacional precisa reabilitar interrupções desse mecanismo e sincronizar seu estado com o mecanismo de GPU de redefinição. Depois disso, o sistema operacional habilitará interrupções e chamará DxgkDdiResumeHwEngine, que instrui o mecanismo de GPU a começar a agendar todos os contextos executáveis que não foram afetados pela redefinição do mecanismo.

Registre a implementação dessa função de retorno de chamada na estrutura **DRIVER_INITIALIZATION_DATA ** .

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 10, versão 1703 (WDDM 2.2)
Cabeçalho d3dkmddi.h

Confira também

DXGKARG_RESETHWENGINE

DxgkDdiResumeHwEngine