DXGKDDI_RESETHWENGINE コールバック関数 (d3dkmddi.h)
Dxgkrnl は、GPU エンジンのリセットが必要な場合に、ディスプレイ ミニポート ドライバー (KMD) DxgkDdiResetHwEngine 関数を呼び出します。
構文
DXGKDDI_RESETHWENGINE DxgkddiResethwengine;
NTSTATUS DxgkddiResethwengine(
IN_CONST_HANDLE hAdapter,
INOUT_PDXGKARG_RESETHWENGINE pResetHwEngine
)
{...}
パラメーター
hAdapter
[in]ディスプレイ アダプターに関連付けられているコンテキスト ブロックへのハンドル。 KMD は以前、DxgkDdiAddDevice 関数の出力パラメーター ミニポートDeviceContext で Dxgkrnl を するためにこのハンドルを提供しました。
pResetHwEngine
[入力/出力]ハードウェア エンジンをリセットするための情報を含む DXGKARG_RESETHWENGINE 構造体へのポインター。
戻り値
DxgkDdiResetHwEngine 、操作が成功した場合にSTATUS_SUCCESSを返します。 それ以外の場合は、適切な NTSTATUS エラー コードが返されます。
備考
DxgkDdiResetHwEngine 実装では、DxgkCbInvalidateHwContext コールバックを呼び出して、GPU エンジンのリセット操作の影響を受けた実行中のすべてのコンテキストを OS に通知する必要があります。 OS は、これらのコンテキスト デバイスを無効にし (エラーで設定)、今後の送信は実行しません。
DxgkDdiResetHwEngine 呼び出された後、エンジンはまだ再開されていないと見なされるため、無効にされなかったコンテキストの送信は許可されません。 OS では、このエンジンからの割り込みを再度有効にし、その状態をリセット GPU エンジンと同期する必要があります。 その後、OS は割り込みを有効にし、DxgkDdiResumeHwEngine呼び出します。これにより、エンジンのリセットの影響を受けなかった実行可能なすべてのコンテキストのスケジュールを開始するように GPU エンジンに指示されます。
このコールバック関数の実装を **DRIVER_INITIALIZATION_DATA** 構造体に登録します。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 10 バージョン 1703 (WDDM 2.2) |
ヘッダー | d3dkmddi.h |
関連項目
DxgkDdiResumeHwEngineをする