DXGKDDI_DISCONNECTDOORBELL コールバック関数 (d3dkmddi.h)

重要

一部の情報はプレリリース製品に関連しており、市販される前に大幅に変更される可能性があります。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。

DxgkDdiDisconnectDoorbell 関数は、以前に接続された doorbell オブジェクトをハードウェア キューから切断します。

構文

DXGKDDI_DISCONNECTDOORBELL DxgkddiDisconnectdoorbell;

NTSTATUS DxgkddiDisconnectdoorbell(
  INOUT_PDXGKARG_DISCONNECTDOORBELL pArgs
)
{...}

パラメーター

pArgs

[入力/出力]切断するドアベルを記述する DXGKARG_DISCONNECTDOORBELL 構造体へのポインター。

戻り値

DxgkDdiDisconnectDoorbell は 成功し、STATUS_SUCCESSを返す必要があります。

注釈

OS は DxgkDdiDisconnectDoorbell を呼び出して、このドアベルに割り当てられている物理的なドアベルの場所のマップを解除します。 KMD では、ハードウェア キュー、ドアベル物理アドレス、エンジンなどを切断する必要があります。物理的なドアベルの位置は、他の論理ドアベル オブジェクトに割り当てることができます。

kmd は、ドアベル オブジェクトが破棄されておらず、後で再接続できるため、 hDoorbell に関連付けられている他のオブジェクトを破棄したり解放したりしないでください。

この DDI 呼び出しから返された 場合、Dxgkrnl はドアベルを切断するために次の手順を実行します。

  • UMD が物理的なドアベルの場所に書き込めなくなったように、ユーザー モードの DoorbellCpuVirtualAddress をダミー ページに回転させます。
  • D3DDDI_DOORBELL_STATUS_DISCONNECTED_RETRYを DoorbellStatusCpuVirtualAddress に書き込み、UMD がドアベルが切断されていることを認識します。

要件

要件
サポートされている最小のクライアント WIN11_FUTURE
Header d3dkmddi.h
IRQL PASSIVE_LEVEL

こちらもご覧ください

D3DDDI_DOORBELLSTATUS

D3DKMT_CREATE_DOORBELL

DXGKARG_DISCONNECTDOORBELL

DxgkDdiConnectDoorbell

DxgkDdiDisconnectDoorbellCB