ENABLE_VIRTUALIZATION función de devolución de llamada (wdm.h)
La rutina EnableVirtualization habilita o deshabilita la virtualización de un dispositivo PCI Express (PCIe) que admite la interfaz de virtualización de E/S raíz única (SR-IOV).
Sintaxis
ENABLE_VIRTUALIZATION EnableVirtualization;
NTSTATUS EnableVirtualization(
[in, out] PVOID Context,
[in] UINT16 NumVFs,
[in] BOOLEAN EnableVfMigration,
[in] BOOLEAN EnableMigrationInterrupt,
[in] BOOLEAN EnableVirtualization
)
{...}
Parámetros
[in, out] Context
Puntero a información de contexto específica de la interfaz. El autor de la llamada pasa el valor que se pasa como miembro Context de la estructura PCI_VIRTUALIZATION_INTERFACE de la interfaz.
[in] NumVFs
Número de funciones virtuales (FV) pcIe que se van a habilitar para el dispositivo. La rutina EnableVirtualization establece el miembro NumVFs de la estructura de funcionalidad extendida PCIe SR-IOV en el valor del parámetro NumVFs .
Si el parámetro EnableVirtualization es FALSE, el parámetro NumVFs debe establecerse en cero.
[in] EnableVfMigration
Valor BOOLEAN que indica si la función base de virtualización de E/S de varias raíces (MR-IOV) (BF) puede volver a aprovisionar dinámicamente la función física PCIe (PF) del dispositivo como una VF en tiempo de ejecución.
Este parámetro solo se aplica a los dispositivos que admiten las interfaces SR-IOV y MR-IOV. El controlador debe establecer este parámetro en FALSE si el dispositivo solo admite la interfaz SR-IOV y no la interfaz MR-IOV.
[in] EnableMigrationInterrupt
Valor BOOLEAN que indica si la interrupción asociada al PF se debe enmascarar o desenmascarar durante la migración de VF.
Si los parámetros EnableVfMigration son FALSE, el controlador también debe establecer este parámetro en FALSE.
[in] EnableVirtualization
Valor BOOLEAN que indica si la virtualización está habilitada en el espacio de configuración PCIe del dispositivo. Si el parámetro EnableVirtualization es TRUE, la rutina EnableVirtualization establece el bit Habilitar VF del campo Control SR-IOV de PCIe. La rutina EnableVirtualization borra este bit si el parámetro EnableVirtualization es FALSE.
Valor devuelto
La rutina EnableVirtualization devuelve uno de los siguientes valores NTSTATUS:
Código devuelto | Descripción |
---|---|
STATUS_SUCCESS | La operación se ha completado correctamente. |
STATUS_INVALID_PARAMETER | El parámetro NumVFs es cero o es mayor que el valor del miembro TotalVFs de la estructura de funcionalidad extendida SR-IOV para el dispositivo. |
STATUS_INVALID_DEVICE_STATE | La virtualización ya está habilitada en el dispositivo y el parámetro EnableVirtualization es TRUE, o la virtualización ya está deshabilitada en el dispositivo y el parámetro EnableVirtualization es FALSE. |
Comentarios
Los controladores llaman a la rutina EnableVirtualization para configurar los campos sr-IOV Extended Capability en el espacio de configuración PCIe. Esta llamada habilita o deshabilita la virtualización en el espacio de configuración y especifica el número de máquinas virtuales que el dispositivo debe exponer al tejido PCIe.
La interfaz GUID_PCI_VIRTUALIZATION_INTERFACE proporciona la rutina EnableVirtualization.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Se admite en Windows Server 2012 y versiones posteriores de Windows. |
Plataforma de destino | Escritorio |
Encabezado | wdm.h (incluya Wdm.h) |
IRQL | IRQL <= DISPATCH_LEVEL |