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 |