ENABLE_VIRTUALIZATION fonction de rappel (wdm.h)
La routine EnableVirtualization active ou désactive la virtualisation pour un appareil PCI Express (PCIe) qui prend en charge l’interface de virtualisation d’E/S racine unique (SR-IOV).
Syntaxe
ENABLE_VIRTUALIZATION EnableVirtualization;
NTSTATUS EnableVirtualization(
[in, out] PVOID Context,
[in] UINT16 NumVFs,
[in] BOOLEAN EnableVfMigration,
[in] BOOLEAN EnableMigrationInterrupt,
[in] BOOLEAN EnableVirtualization
)
{...}
Paramètres
[in, out] Context
Pointeur vers des informations de contexte spécifiques à l’interface. L’appelant transmet la valeur qui est passée en tant que membre context de la structure PCI_VIRTUALIZATION_INTERFACE pour l’interface.
[in] NumVFs
Nombre de fonctions virtuelles PCIe à activer pour l’appareil. La routine EnableVirtualization définit le membre NumVFs de la structure de capacité étendue PCIe SR-IOV sur la valeur du paramètre NumVFs .
Si le paramètre EnableVirtualization a la valeur FALSE, le paramètre NumVFs doit être défini sur zéro.
[in] EnableVfMigration
Valeur BOOLEAN qui indique si la fonction de base de virtualisation d’E/S multi-racine (MR-IOV) peut reprovisionner dynamiquement la fonction physique PCIe (PF) de l’appareil en tant que VF au moment de l’exécution.
Ce paramètre s’applique uniquement aux appareils qui prennent en charge les interfaces SR-IOV et MR-IOV. Le pilote doit définir ce paramètre sur FALSE si l’appareil prend uniquement en charge l’interface SR-IOV et non l’interface MR-IOV.
[in] EnableMigrationInterrupt
Valeur BOOLEAN qui indique si l’interruption associée au pf doit être masquée ou non masquée pendant la migration VF.
Si les paramètres EnableVfMigration ont la valeur FALSE, le pilote doit également définir ce paramètre sur FALSE.
[in] EnableVirtualization
Valeur BOOLEAN qui indique si la virtualisation est activée sur l’espace de configuration PCIe de l’appareil. Si le paramètre EnableVirtualization a la valeur TRUE, la routine EnableVirtualization définit le bit Enable VF du champ PCIe SR-IOV Control. La routine EnableVirtualization efface ce bit si le paramètre EnableVirtualization a la valeur FALSE.
Valeur retournée
La routine EnableVirtualization retourne l’une des valeurs NTSTATUS suivantes :
Code de retour | Description |
---|---|
STATUS_SUCCESS | L’opération s’est terminée avec succès. |
STATUS_INVALID_PARAMETER | Le paramètre NumVFs est égal à zéro ou supérieur à la valeur du membre TotalVFs de la structure de capacité étendue SR-IOV pour l’appareil. |
STATUS_INVALID_DEVICE_STATE | La virtualisation est déjà activée sur l’appareil et le paramètre EnableVirtualization a la valeur TRUE, ou la virtualisation est déjà désactivée sur l’appareil et le paramètre EnableVirtualization a la valeur FALSE. |
Remarques
Les pilotes appellent la routine EnableVirtualization pour configurer les champs Capacité étendue SR-IOV dans l’espace de configuration PCIe. Cet appel active ou désactive la virtualisation dans l’espace de configuration et spécifie le nombre de machines virtuelles qui doivent être exposées à l’infrastructure PCIe par l’appareil.
La routine EnableVirtualization est fournie par l’interface GUID_PCI_VIRTUALIZATION_INTERFACE .
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Pris en charge dans Windows Server 2012 et versions ultérieures de Windows. |
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | wdm.h (include Wdm.h) |
IRQL | IRQL <= DISPATCH_LEVEL |