DXGKCB_DISCONNECTDOORBELL fonction de rappel (d3dkmddi.h)
Important
Certaines informations concernent un produit de préversion qui peut être sensiblement modifié avant sa publication commerciale. Microsoft n’offre aucune garantie, expresse ou implicite, en ce qui concerne les informations fournies ici.
Les appels KMD DxgkCbDisconnectDoorbell pour notifier Dxgkrnl que KMD doit déconnecter une porte d’entrée précédemment connectée à partir d’une file d’attente matérielle.
DXGKCB_DISCONNECTDOORBELL DxgkcbDisconnectdoorbell;
NTSTATUS DxgkcbDisconnectdoorbell(
INOUT_PDXGKARGCB_DISCONNECTDOORBELL pArgs
)
{...}
pArgs
[in] Pointeur vers une structure DXGKARGCB_DISCONNECTDOORBELL qui décrit la porte d’entrée à déconnecter.
DxgkCbDisconnectDoorbell retourne STATUS_INVALID_PARAMETER si Dxgkrnl ne trouve pas le hDoorbell associé pour hHwQueue, ou si DisconnectReason n’est pas l’une des valeursXXX D3DDDI_DOORBELLSTATUS_DISCONNECTED_. Dans tous les autres cas, cette fonction réussit, même lorsque la porte d’entrée est déjà déconnectée.
KMD appelle cette fonction pour notifier Dxgkrnl lorsqu’elle doit déconnecter une porte d’entrée. KMD doit considérer l’adresse de porte d’entrée physique à déconnecter uniquement après le retour de ce rappel.
Dxgkrnl annule les adresses virtuelles et marque la porte comme déconnectée. Plus précisément, Dxgkrnl effectue les étapes suivantes pour déconnecter la porte d’entrée :
- Fait pivoter le mode utilisateur DoorbellCpuVirtualAddress vers une page factice afin que UMD ne puisse plus écrire à l’emplacement physique de la porte d’entrée.
- Écrit le DisconnectReason dans DoorbellStatusCpuVirtualAddress afin que UMD sache que la porte est déconnectée et la raison pour laquelle.
Pour plus d’informations, consultez soumission de travail en mode utilisateur.
Exigence | Valeur |
---|---|
client minimum pris en charge | Windows 11, version 24H2 (WDDM 3.2) |
d’en-tête | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |