次の方法で共有


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

KMD の DxgkDdiSaveImmutableMigrationData 関数は、開始しようとしているライブ マイグレーションの不変データを保存します。

構文

DXGKDDI_SAVEIMMUTABLEMIGRATIONDATA DxgkddiSaveimmutablemigrationdata;

NTSTATUS DxgkddiSaveimmutablemigrationdata(
  IN_CONST_HANDLE hAdapter,
  INOUT_PDXGKARG_GPUP_SAVE_IMMUTABLE_MIGRATION_DATA pArgs
)
{...}

パラメーター

hAdapter

[in]ディスプレイ アダプターに関連付けられているコンテキスト ブロックへのハンドル。 ディスプレイ ミニポート ドライバーは、DXGKDDI_ADD_DEVICE 関数の出力パラメーター ミニポートDeviceContext で Dxgkrnl するこのハンドルを提供しました。

pArgs

[入力/出力]呼び出しに関連する情報の DXGKARG_GPUP_SAVE_IMMUTABLE_MIGRATION_DATA 構造体へのポインター。

戻り値

DxgkDdiSaveImmutableMigrationData 、呼び出しが成功した場合にSTATUS_SUCCESSを返します。 それ以外の場合は、適切な NTSTATUS コードが返されます。

備考

KMD の DxgkDdiPrepareLiveMigration 関数を呼び出した後、Dxgkrnl DxgkDdiSaveImmutableMigrationData を呼び出して、ターゲット側で復元するデバイスに関する情報を収集します。 この点は、システムがリモートの構成を検証する機会でもあるため、DxgkDdiSaveImmutableMigrationData は、VF をターゲット構成に移動する機能を検出できるハードウェア、ファームウェア、またはドライバー検証データを検証するのに十分な情報をパッケージ化する必要があります。

ドライバーは、ターゲットの KMD が新しい VF の初期化に使用できる、実行中に変更されない VF に関するデータを格納する必要があります。 このデータは、より低いレベルで転送され、通常の DDI を使用して vGPU を作成するために使用されるため、vGPU 作成パラメーターを含める必要はありません。 これには、VF に不変に関連付けられているすべてのデータを含めることができます。ターゲット側ですべてのデータを復元する必要はありません。 データは、このインターフェイスの重要な部分である検証目的で純粋に送信できます。

DxgkDdiSaveImmutableMigrationData は、クラシック動的バッファー パターンで呼び出されます。

  • 最初の呼び出しでは、DataSize は 0 に設定され、Data は NULL に設定されます。 KMD DataSize は、変更できないデータを格納するために必要な合計バイト数に変更する必要があります。
  • Dxgkrnl DataSize バイトのバッファーを作成し、DataSize KMD によって返される値に設定され、割り当てられたバッファーを指すデータ して 2 回目の呼び出しを行います。 Dxgkrnl は、呼び出し後に割り当てられたこのメモリの有効期間を制御します。

DxgkDdiSaveMutableMigrationDataは、ライブ マイグレーションの終了時に呼び出され、変更可能なデータを収集します。

詳細については、「GPU-P デバイスでのライブ マイグレーション」を参照してください。

必要条件

要件 価値
サポートされる最小クライアント Windows 11 バージョン 24H2 (WDDM 3.2)
ヘッダー d3dkmddi.h
IRQL PASSIVE_LEVEL

関連項目

DXGKARG_GPUP_SAVE_IMMUTABLE_MIGRATION_DATA

DxgkDdiPrepareLiveMigration

DxgkDdiSaveMutableMigrationDataする