DXGKCB_DISCONNECTDOORBELL Rückruffunktion (d3dkmddi.h)
Wichtig
Einige Informationen beziehen sich auf ein Vorabversionsprodukt, das vor der kommerziellen Veröffentlichung erheblich geändert werden kann. Microsoft übernimmt keine Gewährleistungen, ausdrücklich oder konkludent in Bezug auf die hier bereitgestellten Informationen.
KMD ruft DxgkCbDisconnectDoorbell- auf, um Dxgkrnl- zu benachrichtigen, dass KMD eine zuvor verbundene Türglocke von einer Hardwarewarteschlange trennen muss.
Syntax
DXGKCB_DISCONNECTDOORBELL DxgkcbDisconnectdoorbell;
NTSTATUS DxgkcbDisconnectdoorbell(
INOUT_PDXGKARGCB_DISCONNECTDOORBELL pArgs
)
{...}
Parameter
pArgs
[in] Zeigen Sie auf eine DXGKARGCB_DISCONNECTDOORBELL Struktur, die die Türglocke beschreibt, um die Verbindung zu trennen.
Rückgabewert
DxgkCbDisconnectDoorbell gibt STATUS_INVALID_PARAMETER zurück, wenn Dxgkrnl die zugeordneten hDoorbell- für hHwQueuenicht finden kann oder wenn DisconnectReason keine der D3DDDI_DOORBELLSTATUS_DISCONNECTED_XXX Werte ist. In allen anderen Fällen ist diese Funktion erfolgreich, auch wenn die Türglocke bereits getrennt ist.
Bemerkungen
KMD ruft diese Funktion auf, um Dxgkrnl- zu benachrichtigen, wenn eine Türglocke getrennt werden muss. KMD sollte die physische Doorbell-Adresse berücksichtigen, die erst nach der Rückgabe von diesem Rückruf getrennt werden soll.
Dxgkrnl die Zuordnung der virtuellen Adressen aufzuheben und die Türglocke als getrennt markiert. Insbesondere führt Dxgkrnl- die folgenden Schritte aus, um die Türglocke zu trennen:
- Dreht den Benutzermodus DoorbellCpuVirtualAddress auf eine Dummyseite, sodass UMD nicht mehr an die physische Türkelnposition schreiben kann.
- Schreibt die DisconnectReason in DoorbellStatusCpuVirtualAddress so dass UMD weiß, dass die Türglocke getrennt ist und warum.
Weitere Informationen finden Sie unter Arbeitsübermittlung im Benutzermodus.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Windows 11, Version 24H2 (WDDM 3.2) |
Header- | d3dkmddi.h |
IRQL- | PASSIVE_LEVEL |