DXGKDDI_RESTOREIMMUTABLEMIGRATIONDATA Rückruffunktion (d3dkmddi.h)
Das empfangende Betriebssystem ruft DxgkDdiRestoreImmutableMigrationData auf, um unveränderliche Daten wiederherzustellen, die vom sendenden Treiber in einem vorherigen Aufruf von DxgkDdiSaveImmutableMigrationData gespeichert wurden.
Syntax
DXGKDDI_RESTOREIMMUTABLEMIGRATIONDATA DxgkddiRestoreimmutablemigrationdata;
NTSTATUS DxgkddiRestoreimmutablemigrationdata(
IN_CONST_HANDLE hAdapter,
IN_CONST_PDXGKARG_GPUP_RESTORE_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] Zeiger auf eine DXGKARG_GPUP_RESTORE_IMMUTABLE_MIGRATION_DATA Struktur, die Informationen enthält, die zum Wiederherstellen der unveränderlichen Daten erforderlich sind.
Rückgabewert
DxgkDdiRestoreImmutableMigrationData gibt STATUS_SUCCESS zurück, wenn der Aufruf erfolgreich ist. Andernfalls wird ein geeigneter NTSTATUS-Code wie der STATUS_OBJECT_TYPE_MISMATCH-Fehlercode zurückgegeben (siehe Hinweise).
Hinweise
Im Gegensatz zur Speicher-/Sendeseite, die zweimal aufgerufen wird, wird DxgkDdiRestoreImmutableMigrationData nur einmal aufgerufen, da es über alle Daten verfügt, die erforderlich sind, um dem empfangenden KMD einen vollständigen Datenpuffer zu präsentieren. Der Treiber sollte die Daten übernehmen und sie auf die VF anwenden, die erstellt wird, sowie auf alle Nachverfolgungen, und er sollte die Dateninvarianten überprüfen, die für eine erfolgreiche Wiederherstellung erforderlich sind.
Der Puffer ist der Inhalt, der auf der Quellseite in DxgkDdiSaveImmutableMigrationData gefüllt wurde, daher sollte KMD diese Daten in einem allgemeinen Typ nachverfolgen. Es sollte auch ein Versionsverwaltungsschema in den Inhaltsdaten implementiert werden, wenn die Daten möglicherweise mit neuen Treibern geändert werden müssen, und dieses Schema sollte Teil der Versionsüberprüfung auf dem Ziel sein.
Wenn die Daten darauf hindeuten, dass das Zielsystem nicht ordnungsgemäß für die Migration des VF von der Quelle konfiguriert ist, sollte KMD die folgenden Schritte ausführen:
- Melden Sie dieses Problem über dxgkCbLogEtwEvent mit dem bezeichner GUID_DxgkAzureTriageEvent und spezifischen Details zur fehlgeschlagenen Überprüfung, damit das Problem selektierung und behoben werden kann.
- Zurückgeben von diesem DDI-Aufruf mit dem STATUS_OBJECT_TYPE_MISMATCH Fehler.
DxgkDdiRestoreImmutableMigrationData sollte immer nur für VFs aufgerufen werden, die derzeit angehalten sind.
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 |