DXGKCB_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.

KMD ruft diese DxgkCbDisconnectDoorbell-Funktion auf, um Dxgkrnl zu benachrichtigen, dass KMD ein zuvor verbundenes Türklingelobjekt von einer Hardwarewarteschlange trennen muss.

Syntax

DXGKCB_DISCONNECTDOORBELL DxgkcbDisconnectdoorbell;

NTSTATUS DxgkcbDisconnectdoorbell(
  INOUT_PDXGKARGCB_DISCONNECTDOORBELL pArgs
)
{...}

Parameter

pArgs

[in] Zeiger auf eine DXGKARGCB_DISCONNECTDOORBELL-Struktur , die die zu trennende Türklingel beschreibt.

Rückgabewert

DxgkCbDisconnectDoorbell gibt STATUS_INVALID_PARAMETER zurück, wenn Dxgkrnl das zugeordnete Türklingelobjekt für hHwQueue nicht finden kann. In allen anderen Fällen ist diese Funktion erfolgreich, auch wenn die Türklingel bereits getrennt ist.

Hinweise

KMD ruft diese Funktion auf, um Dxgkrnl zu benachrichtigen, wenn eine Türklingel getrennt werden muss. KMD sollte berücksichtigen, dass die physische Türklingeladresse erst nach der Rückgabe von diesem Rückruf getrennt wird.

Dxgkrnl hebt die Zuordnung der virtuellen Adressen auf und markiert die Türklingel als getrennt. Dxgkrnl führt insbesondere 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 DisconnectReason in DoorbellStatusCpuVirtualAddress , damit UMD weiß, dass die Türklingel getrennt ist und warum.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) WIN11_FUTURE
Kopfzeile d3dkmddi.h
IRQL PASSIVE_LEVEL

Weitere Informationen

DXGKARGCB_DISCONNECTDOORBELL

DxgkDdiConnectDoorbell