DXGKDDI_RESTOREIMMUTABLEMIGRATIONDATAコールバック関数 (d3dkmddi.h)
受信側 OS は DxgkDdiRestoreImmutableMigrationData 呼び出して、以前の呼び出しで送信側ドライバーによって保存された変更できないデータ DxgkDdiSaveImmutableMigrationDataに復元します。
構文
DXGKDDI_RESTOREIMMUTABLEMIGRATIONDATA DxgkddiRestoreimmutablemigrationdata;
NTSTATUS DxgkddiRestoreimmutablemigrationdata(
IN_CONST_HANDLE hAdapter,
IN_CONST_PDXGKARG_GPUP_RESTORE_IMMUTABLE_MIGRATION_DATA pArgs
)
{...}
パラメーター
hAdapter
[in]ディスプレイ アダプターに関連付けられているコンテキスト ブロックへのハンドル。 ディスプレイ ミニポート ドライバーは、DXGKDDI_ADD_DEVICE 関数の出力パラメーター ミニポートDeviceContext で Dxgkrnl を するこのハンドルを提供しました。
pArgs
[in]変更できないデータを復元するために必要な情報を含む DXGKARG_GPUP_RESTORE_IMMUTABLE_MIGRATION_DATA 構造体へのポインター。
戻り値
DxgkDdiRestoreImmutableMigrationData は、呼び出しが成功した場合にSTATUS_SUCCESSを返します。 それ以外の場合は、STATUS_OBJECT_TYPE_MISMATCHエラー コードなどの適切な NTSTATUS コードが返されます (「解説」を参照)。
備考
2 回呼び出される保存/送信側とは異なり、DxgkDdiRestoreImmutableMigrationData は、受信側 KMD に完全なデータ バッファーを提示するために必要なすべてのデータがあるため、1 回だけ呼び出されます。 ドライバーは、データを取得し、構築中の VF に適用する必要があります。また、その追跡も行う必要があります。また、復元を成功させるために必要なデータ不変性を検証する必要があります。
バッファーは、ソース側 DxgkDdiSaveImmutableMigrationDataで入力されたコンテンツであるため、KMD は共通の型でそのデータを追跡する必要があります。 データが新しいドライバーで変更する必要がある可能性があり、このスキームがターゲットで行われるバージョン チェックの一部である必要がある場合は、コンテンツ データにバージョン管理スキームが実装されている必要もあります。
ソースから VF を移行するようにターゲット システムが正しく構成されていないことがデータに示されている場合、KMD は次の操作を行う必要があります。
- この問題は、DxgkCbLogEtwEvent を通じて、GUID_DxgkAzureTriageEvent識別子と検証に失敗した内容に関する具体的な詳細を報告して、問題をトリアージして修正できるようにします。
- この DDI 呼び出しから、STATUS_OBJECT_TYPE_MISMATCH エラーで戻ります。
DxgkDdiRestoreImmutableMigrationData は、現在一時停止されている VM に対してのみ呼び出す必要があります。
詳細については、「GPU-P デバイスでのライブ マイグレーション」を参照してください。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 11 バージョン 24H2 (WDDM 3.2) |
ヘッダー | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |
関連項目
DXGKARG_GPUP_RESTORE_IMMUTABLE_MIGRATION_DATA
DxgkDdiSaveImmutableMigrationDataをする