DXGKDDI_RESETHWENGINE fonction de rappel (d3dkmddi.h)

Dxgkrnl appelle la fonction DxgkDdiResetHwEngine du pilote miniport d’affichage (KMD) quand une réinitialisation du moteur GPU est requise.

Syntaxe

DXGKDDI_RESETHWENGINE DxgkddiResethwengine;

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

Paramètres

hAdapter

[in] Handle du bloc de contexte associé à une carte d’affichage. KMD fournissait précédemment ce handle à Dxgkrnl dans le paramètre de sortie MiniportDeviceContext de la fonction DxgkDdiAddDevice .

pResetHwEngine

[in/out] Pointeur vers une structure DXGKARG_RESETHWENGINE qui contient des informations pour réinitialiser le moteur matériel.

Valeur retournée

DxgkDdiResetHwEngine retourne STATUS_SUCCESS si l’opération réussit. Sinon, il doit retourner un code d’erreur NTSTATUS approprié.

Remarques

Une implémentation DxgkDdiResetHwEngine doit appeler le rappel DxgkCbInvalidateHwContext pour informer le système d’exploitation de tous les contextes en cours d’exécution qui ont été affectés par l’opération de réinitialisation du moteur GPU. Le système d’exploitation invalide ces appareils de contexte (définissez-les par erreur) et n’effectuera pas de soumissions ultérieures.

Le moteur n’est pas encore considéré comme ayant repris après l’appel de DxgkDdiResetHwEngine , les contextes qui n’ont pas été invalidés ne sont pas autorisés à être envoyés. Le système d’exploitation doit réactiver les interruptions de ce moteur et synchroniser son état avec le moteur GPU de réinitialisation. Après cela, le système d’exploitation active les interruptions et appelle DxgkDdiResumeHwEngine, qui indique au moteur GPU de commencer à planifier tous les contextes exécutables qui n’ont pas été affectés par la réinitialisation du moteur.

Inscrivez votre implémentation de cette fonction de rappel dans la structure **DRIVER_INITIALIZATION_DATA** .

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 10, version 1703 (WDDM 2.2)
En-tête d3dkmddi.h

Voir aussi

DXGKARG_RESETHWENGINE

DxgkDdiResumeHwEngine