共用方式為


DXGKCB_DISCONNECTDOORBELL回呼函式 (d3dkmddi.h)

重要

某些資訊與發行前版本產品有關,在發行前版本產品可能經過大幅修改。 Microsoft未就此處提供的資訊提供任何明示或默示擔保。

KMD 會呼叫 DxgkCbDisconnectDoorbell,以通知 Dxgkrnl KMD 需要中斷先前連線的門鈴與硬體佇列的連線。

語法

DXGKCB_DISCONNECTDOORBELL DxgkcbDisconnectdoorbell;

NTSTATUS DxgkcbDisconnectdoorbell(
  INOUT_PDXGKARGCB_DISCONNECTDOORBELL pArgs
)
{...}

參數

pArgs

[in]描述要中斷連線之門鈴之 DXGKARGCB_DISCONNECTDOORBELL 結構的指標。

傳回值

DxgkCbDisconnectDoorbell 如果 Dxgkrnl 找不到 hHwQueue的相關聯 hDoorbell,或 DisconnectReason 不是其中一個 D3DDDI_DOORBELLSTATUS_DISCONNECTED_XXX 值,則會傳回STATUS_INVALID_PARAMETER。 在其他所有情況下,此函式都會成功,即使門鈴已經中斷連線也一樣。

言論

KMD 會呼叫此函式,以在需要中斷門鈴時通知 Dxgkrnl。 KMD 應該將實體門鈴地址視為只有在從這個回呼傳回後才能中斷連線。

Dxgkrnl 取消對應虛擬位址,並將門鈴標示為已中斷連線。 具體來說,Dxgkrnl 會執行下列步驟來中斷門鈴的連線:

  • 將使用者模式 DoorbellCpuVirtualAddress 旋轉至虛擬頁面,讓 UMD 無法再寫入實體門鈴位置。
  • DisconnectReason 寫入 DoorbellStatusCpuVirtualAddress,讓 UMD 知道門鈴已中斷連線,以及原因。

如需詳細資訊,請參閱 使用者模式工作提交

要求

要求 價值
最低支援的用戶端 Windows 11 版本 24H2 (WDDM 3.2)
標頭 d3dkmddi.h
IRQL PASSIVE_LEVEL

另請參閱

DXGKARGCB_DISCONNECTDOORBELL

DxgkDdiConnectDoorbell