DXGKDDI_SAVEIMMUTABLEMIGRATIONDATA Rückruffunktion (d3dkmddi.h)
Die DxgkDdiSaveImmutableMigrationData-Funktion von KMD speichert unveränderliche Daten für eine Livemigration, die gerade gestartet wird.
Syntax
DXGKDDI_SAVEIMMUTABLEMIGRATIONDATA DxgkddiSaveimmutablemigrationdata;
NTSTATUS DxgkddiSaveimmutablemigrationdata(
IN_CONST_HANDLE hAdapter,
INOUT_PDXGKARG_GPUP_SAVE_IMMUTABLE_MIGRATION_DATA pArgs
)
{...}
Parameter
hAdapter
[in] Ein Handle für einen Kontextblock, der einer Grafikkarte zugeordnet ist. Der Anzeige-Miniporttreiber hat dieses Handle zuvor für Dxgkrnl im MiniportDeviceContext-Ausgabeparameter der funktion DXGKDDI_ADD_DEVICE bereitgestellt.
pArgs
[in/out] Zeiger auf eine DXGKARG_GPUP_SAVE_IMMUTABLE_MIGRATION_DATA-Struktur für Informationen im Zusammenhang mit dem Aufruf.
Rückgabewert
DxgkDdiSaveImmutableMigrationData gibt STATUS_SUCCESS zurück, wenn der Aufruf erfolgreich ist. Andernfalls wird ein geeigneter NTSTATUS-Code zurückgegeben.
Hinweise
Nach dem Aufrufen der DxgkDdiPrepareLiveMigration-Funktion von KMD ruft Dxgkrnl dannDxgkDdiSaveImmutableMigrationData auf, um Informationen über das Gerät zu sammeln, das auf der Zielseite wiederhergestellt werden soll. Dieser Punkt ist auch eine Gelegenheit für das System, die Konfiguration des Remotecomputers zu überprüfen, sodass DxgkDdiSaveImmutableMigrationData genügend Informationen packen sollte, um alle Hardware-, Firmware- oder Treibervalidierungsdaten zu überprüfen, die die Fähigkeit erkennen können, die VF in die Zielkonfiguration zu verschieben.
Der Treiber sollte Daten über den VF speichern, die sich nicht ändern, während er aktiv ist, und die der KMD des Ziels verwenden kann, um die neue VF zu initialisieren. Diese Daten müssen die vGPU-Erstellungsparameter nicht enthalten, da diese in niedrigeren Ebenen übertragen und zum Erstellen der vGPU mithilfe des normalen DDI verwendet werden. Dies kann alle Daten umfassen, die unveränderlich an den VF gebunden sind und nicht alle auf der Zielseite wiederhergestellt werden müssen. Daten können ausschließlich zu Validierungszwecken gesendet werden, was ein wichtiger Bestandteil dieser Schnittstelle ist.
DxgkDdiSaveImmutableMigrationData wird im klassischen dynamischen Puffermuster aufgerufen:
- Beim ersten Aufruf wird DataSize auf 0 und Data auf NULL festgelegt. KMD sollte DataSize in die Gesamtanzahl von Bytes ändern, die zum Speichern der unveränderlichen Daten benötigt wird.
- Dxgkrnl erstellt einen Puffer von DataSize-Bytes und führt einen zweiten Aufruf aus, wobei DataSize auf den wert festgelegt ist, der von KMD zurückgegeben wird, und Data zeigt auf den zugeordneten Puffer. Dxgkrnl steuert die Lebensdauer dieses zugeordneten Arbeitsspeichers nach dem Aufruf.
DxgkDdiSaveMutableMigrationData wird am Ende einer Livemigration aufgerufen, um veränderliche Daten zu sammeln.
Weitere Informationen finden Sie unter Livemigration auf GPU-P-Geräten.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 11, Version 24H2 (WDDM 3.2) |
Kopfzeile | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |