DXGKDDI_DISCONNECTDOORBELL Rückruffunktion (d3dkmddi.h)
Wichtig
Einige Informationen beziehen sich auf ein Vorabrelease-Produkt, das vor der kommerziellen Freigabe wesentlich geändert werden kann. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Die DxgkDdiDisconnectDoorbell-Funktion trennt eine zuvor verbundene Türklingel von einer Hardwarewarteschlange.
Syntax
DXGKDDI_DISCONNECTDOORBELL DxgkddiDisconnectdoorbell;
NTSTATUS DxgkddiDisconnectdoorbell(
INOUT_PDXGKARG_DISCONNECTDOORBELL pArgs
)
{...}
Parameter
pArgs
[in/out] Zeiger auf eine DXGKARG_DISCONNECTDOORBELL Struktur, die die zu trennende Türklingel beschreibt.
Rückgabewert
DxgkDdiDisconnectDoorbell muss erfolgreich sein und STATUS_SUCCESS zurückgeben.
Hinweise
Das Betriebssystem ruft DxgkDdiDisconnectDoorbell auf, um die Zuordnung der physischen Türklingelposition aufzuheben, die dieser Türklingel zugewiesen ist. KMD sollte die Hardwarewarteschlange, die physische Adresse der Türklingel und die Engine usw. trennen. Die physische Türklingelposition kann einem anderen logischen Türklingelobjekt zugewiesen werden.
KmD sollte keine anderen Objekte zerstören oder freigeben, die hDoorbell zugeordnet sind, da das Türklingelobjekt nicht zerstört wird und zu einem späteren Zeitpunkt wiederhergestellt werden kann.
Bei der Rückkehr von diesem DDI-Anruf führt Dxgkrnl die folgenden Schritte aus, um die Türklingel zu trennen:
- Rotiert den Benutzermodus DoorbellCpuVirtualAddress auf eine Dummyseite, sodass UMD nicht mehr in den physischen Klingelort schreiben kann.
- Schreibt D3DDDI_DOORBELL_STATUS_DISCONNECTED_RETRY in DoorbellStatusCpuVirtualAddress , damit UMD weiß, dass die Türklingel getrennt ist.
Weitere Informationen finden Sie unter Benutzermodus-Arbeitsübermittlung.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 11, Version 24H2 (WDDM 3.2) |
Kopfzeile | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |