Freigeben über


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

Siehe auch

DXGKARGCB_DISCONNECTDOORBELL

DxgkDdiConnectDoorbell