Partager via


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

Voir aussi

PCI_VIRTUALIZATION_INTERFACE