Freigeben über


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 DxgkDdiSaveImmutableMigrationDatagespeichert 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 zu einem Kontextblock, der einem Anzeigeadapter zugeordnet ist. Der Display-Miniporttreiber hat dieses Handle zuvor für Dxgkrnl- im MiniportDeviceContext Ausgabeparameter der DXGKDDI_ADD_DEVICE-Funktion bereitgestellt.

pArgs

[in] Zeigen Sie 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 entsprechender NTSTATUS-Code zurückgegeben, z. B. der STATUS_OBJECT_TYPE_MISMATCH Fehlercode (siehe Hinweise).

Bemerkungen

Im Gegensatz zur zweimal aufgerufenen Speicher-/Sendeseite wird DxgkDdiRestoreImmutableMigrationData- nur einmal aufgerufen, da alle Daten vorhanden sind, die zum Darstellen eines vollständigen Datenpuffers für den empfangenden seitenseitigen KMD erforderlich sind. Der Treiber sollte die Daten übernehmen und auf den erstellten VF anwenden, sowie jede Nachverfolgung dafür, 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 DxgkDdiSaveImmutableMigrationDatagefüllt wurde. Daher sollte KMD diese Daten in einem gemeinsamen Typ nachverfolgen. Es sollte auch ein Versionsverwaltungsschema in den Inhaltsdaten implementiert werden, wenn sich die Daten möglicherweise mit neuen Treibern ändern müssen, und dieses Schema sollte Teil der Versionsüberprüfung für das Ziel sein.

Wenn die Daten angeben, dass das Zielsystem nicht ordnungsgemäß für die Migration des VF aus der Quelle konfiguriert ist, sollte KMD folgendes ausführen:

  1. Melden Sie dieses Problem über die DxgkCbLogEtwEvent- mit dem GUID_DxgkAzureTriageEvent Bezeichner und spezifischen Details zu der fehlgeschlagenen Überprüfung, sodass das Problem triaged und korrigiert werden kann.
  2. Zurückgeben von diesem DDI-Aufruf mit dem STATUS_OBJECT_TYPE_MISMATCH Fehler.

DxgkDdiRestoreImmutableMigrationData- sollte nur für derzeit angehaltene VFs aufgerufen werden.

Weitere Informationen finden Sie unter Livemigration auf GPU-P Geräten.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 11, Version 24H2 (WDDM 3.2)
Header- d3dkmddi.h
IRQL- PASSIVE_LEVEL

Siehe auch

DXGKARG_GPUP_RESTORE_IMMUTABLE_MIGRATION_DATA

DxgkDdiSaveImmutableMigrationData-