Partager via


fonction de rappel ENABLE_VIRTUALIZATION (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 de 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 SR-IOV PCIe sur la valeur du paramètre NumVFs.

Si le paramètre EnableVirtualization est FALSE, le paramètre NumVFs doit être défini sur zéro.

[in] EnableVfMigration

Valeur BOOLEAN qui indique si la virtualisation d’E/S multi-racine (MR-IOV) de base (BF) peut reprovisionner dynamiquement la fonction physique PCIe 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 de VF.

Si les paramètres EnableVfMigration sont 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 est TRUE, la routine EnableVirtualization définit le bit Activer VF du champ PCIe SR-IOV Control. La routine EnableVirtualization efface ce bit si le paramètre EnableVirtualization est FALSE.

Valeur de retour

La routine EnableVirtualization retourne l’une des valeurs NTSTATUS suivantes :

Retourner le code 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 de l’appareil.
STATUS_INVALID_DEVICE_STATE La virtualisation est déjà activée sur l’appareil et le paramètre EnableVirtualization est TRUE, ou la virtualisation est déjà désactivée sur l’appareil et le paramètre EnableVirtualization est FALSE.

Remarques

Les pilotes appellent la routine EnableVirtualization pour configurer les champs de 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.

Exigences

Exigence Valeur
client minimum pris en charge Pris en charge dans Windows Server 2012 et versions ultérieures de Windows.
plateforme cible Bureau
d’en-tête wdm.h (include Wdm.h)
IRQL IRQL <= DISPATCH_LEVEL

Voir aussi

PCI_VIRTUALIZATION_INTERFACE