DXGKDDI_OPENNATIVEFENCE コールバック関数 (d3dkmddi.h)
DxgkDdiOpenNativeFence は、ネイティブ GPU フェンス オブジェクトを開くために OS によって呼び出されます。
構文
DXGKDDI_OPENNATIVEFENCE DxgkddiOpennativefence;
NTSTATUS DxgkddiOpennativefence(
IN_CONST_HANDLE hAdapter,
INOUT_PDXGKARG_OPENNATIVEFENCE pOpenNativeFence
)
{...}
パラメーター
hAdapter
[入力]ディスプレイ アダプターに関連付けられているコンテキスト ブロックへのハンドル。 ディスプレイ ミニポート ドライバーは、以前は、DXGKDDI_ADD_DEVICE関数の MiniportDeviceContext 出力パラメーターで Dxgkrnl にこのハンドルを提供しました。
pOpenNativeFence
[入力/出力]開くネイティブ GPU フェンスを記述する DXGKARG_OPENNATIVEFENCE 構造体へのポインター。
戻り値
DxgkDdiOpenNativeFence は、KMD がネイティブ GPU フェンス オブジェクトを正常に開くことができた場合、STATUS_SUCCESSを返します。 それ以外の場合は、適切な NTSTATUS エラー コードが返されます。
注釈
DxgkDdiOpenNativeFence の前には、常に DxgkDdiCreateNativeFence の呼び出しがあります。
2 番目のプロセスで 、D3DKMT_OPENNATIVEFENCEFROMNTHANDLEを使用して共有ネイティブ フェンス オブジェクトを開くと、 Dxgkrnl は次の処理を行います。
- hGlobalNativeFence を見つけます。
- 2 番目のプロセスのアドレス空間で、その既存のオブジェクトの新しい CPU 仮想アドレス (VA) と GPU VA マッピングを作成します。
Dxgkrnl は、新しい hLocalNativeFence ハンドルと共に DxgkDdiOpenNativeFence を呼び出すことによって、このペイロードを KMD に渡します。
ネイティブ GPU フェンスの詳細については、「 ネイティブ GPU フェンス オブジェクト」を参照してください。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 11バージョン 24H2 |
Header | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |