ENABLE_VIRTUALIZATION Rückruffunktion (wdm.h)
Die EnableVirtualization Routine aktiviert oder deaktiviert die Virtualisierung für ein PCI Express (PCIe)-Gerät, das die einzelne I/O-Virtualisierung (SR-IOV) -Schnittstelle unterstützt.
Syntax
ENABLE_VIRTUALIZATION EnableVirtualization;
NTSTATUS EnableVirtualization(
[in, out] PVOID Context,
[in] UINT16 NumVFs,
[in] BOOLEAN EnableVfMigration,
[in] BOOLEAN EnableMigrationInterrupt,
[in] BOOLEAN EnableVirtualization
)
{...}
Parameter
[in, out] Context
Ein Zeiger auf schnittstellenspezifische Kontextinformationen. Der Aufrufer übergibt den Wert, der als Context Member der PCI_VIRTUALIZATION_INTERFACE-Struktur für die Schnittstelle übergeben wird.
[in] NumVFs
Die Anzahl der virtuellen PCIe-Funktionen (VFs), die für das Gerät aktiviert werden sollen. Die EnableVirtualization Routine legt den NumVFs Member der PCIe-SR-IOV Extended Capability-Struktur auf den Wert des NumVFs Parameter fest.
Wenn der parameter EnableVirtualizationFALSEist, muss der parameter NumVFs auf Null festgelegt werden.
[in] EnableVfMigration
Ein BOOLESCHER Wert, der angibt, ob die Multistamm-E/A-Virtualisierung (MR-IOV) Basisfunktion (BF) die PCIe-physische Funktion (PF) des Geräts zur Laufzeit dynamisch als VF neu bereitstellen kann.
Dieser Parameter gilt nur für Geräte, die sowohl die SR-IOV als auch MR-IOV Schnittstellen unterstützen. Der Treiber muss diesen Parameter auf FALSE- festlegen, wenn das Gerät nur die SR-IOV Schnittstelle und nicht die MR-IOV Schnittstelle unterstützt.
[in] EnableMigrationInterrupt
Ein BOOLESCHER Wert, der angibt, ob der mit der PF verknüpfte Interrupt während der VF-Migration maskiert oder entmasket werden soll.
Wenn der parameter EnableVfMigrationFALSEist, muss der Treiber diesen Parameter auch auf FALSEfestlegen.
[in] EnableVirtualization
Ein BOOLESCHER Wert, der angibt, ob die Virtualisierung im PCIe-Konfigurationsraum des Geräts aktiviert ist. Wenn der parameter EnableVirtualizationTRUEist, legt die EnableVirtualization Routine das VF Enable bit des PCIe SR-IOV Control-Felds fest. Die EnableVirtualization Routine löscht dieses Bit, wenn der parameter EnableVirtualizationFALSEist.
Rückgabewert
Die EnableVirtualization Routine gibt einen der folgenden NTSTATUS-Werte zurück:
Rückgabecode | Beschreibung |
---|---|
STATUS_SUCCESS | Der Vorgang wurde erfolgreich abgeschlossen. |
STATUS_INVALID_PARAMETER | Der NumVFs Parameter ist entweder null oder größer als der Wert des TotalVFs Member der SR-IOV Extended Capability-Struktur für das Gerät. |
STATUS_INVALID_DEVICE_STATE | Die Virtualisierung ist bereits auf dem Gerät aktiviert, und der parameter EnableVirtualization parameter ist TRUE, oder die Virtualisierung ist bereits auf dem Gerät deaktiviert, und der EnableVirtualization Parameter ist FALSE. |
Bemerkungen
Treiber rufen die EnableVirtualization Routine auf, um die Felder SR-IOV erweiterter Funktion im PCIe-Konfigurationsbereich zu konfigurieren. Dieser Aufruf aktiviert oder deaktiviert die Virtualisierung im Konfigurationsbereich und gibt die Anzahl der VFs an, die vom Gerät für die PCIe-Fabric verfügbar gemacht werden sollen.
Die EnableVirtualization Routine wird von der GUID_PCI_VIRTUALIZATION_INTERFACE Schnittstelle bereitgestellt.
Anforderungen
Anforderung | Wert |
---|---|
mindestens unterstützte Client- | Unterstützt in Windows Server 2012 und höheren Versionen von Windows. |
Zielplattform- | Desktop |
Header- | wdm.h (include Wdm.h) |
IRQL- | IRQL-<= DISPATCH_LEVEL |