// d3dkmddi.h
DXGKDDI_SAVEIMMUTABLEMIGRATIONDATA DxgkddiSaveimmutablemigrationdata;
NTSTATUS DxgkddiSaveimmutablemigrationdata(
IN_CONST_HANDLE hAdapter,
INOUT_PDXGKARG_GPUP_SAVE_IMMUTABLE_MIGRATION_DATA pArgs
)
{...}
View the official Windows Driver Kit DDI referenceNo description available.
KMD's DxgkDdiSaveImmutableMigrationData function saves immutable data for a live migration that is about to start.
hAdapter[in] A handle to a context block associated with a display adapter. The display miniport driver previously provided this handle to Dxgkrnl in the MiniportDeviceContext output parameter of the DXGKDDI_ADD_DEVICE function.
pArgs[in/out] Pointer to a DXGKARG_GPUP_SAVE_IMMUTABLE_MIGRATION_DATA structure for information related to the call.
DxgkDdiSaveImmutableMigrationData returns STATUS_SUCCESS if the call is successful. Otherwise, it returns an appropriate NTSTATUS code.
After calling KMD's DxgkDdiPrepareLiveMigration function, Dxgkrnl then callsDxgkDdiSaveImmutableMigrationData to gather information about the device to restore on the target side. This point is also an opportunity for the system to validate the configuration of the remote, so DxgkDdiSaveImmutableMigrationData should package up enough information to validate any hardware, firmware, or driver validation data that can detect the capability to move the VF over to the target configuration.
The driver should store data about the VF that won't change while it is alive that the target's KMD can use to help initialize the new VF. This data doesn't need to include the vGPU creation parameters, as those will be transferred in lower levels and used to create the vGPU using the normal DDI. This can include all data that is immutably tied to the VF, and doesn't all need to be restored on the target side. Data can be sent purely for validation purposes, which is a critical part of this interface.
DxgkDdiSaveImmutableMigrationData is called in the classic dynamic buffer pattern:
DxgkDdiSaveMutableMigrationData is called at the end of a live migration to collect mutable data.
For more information, see Live migration on GPU-P devices.
DXGKARG_GPUP_SAVE_IMMUTABLE_MIGRATION_DATA
DxgkDdiSaveMutableMigrationData