функция обратного вызова ENABLE_VIRTUALIZATION (wdm.h)

Подпрограмма EnableVirtualization включает или отключает виртуализацию для устройства PCI Express (PCIe), поддерживающего интерфейс sr-IOV.

Синтаксис

ENABLE_VIRTUALIZATION EnableVirtualization;

NTSTATUS EnableVirtualization(
  [in, out] PVOID Context,
  [in]      UINT16 NumVFs,
  [in]      BOOLEAN EnableVfMigration,
  [in]      BOOLEAN EnableMigrationInterrupt,
  [in]      BOOLEAN EnableVirtualization
)
{...}

Параметры

[in, out] Context

Указатель на сведения о контексте для конкретного интерфейса. Вызывающий объект передает значение, передаваемое в качестве элемента Contextструктуры PCI_VIRTUALIZATION_INTERFACE для интерфейса.

[in] NumVFs

Количество виртуальных функций PCIe ( VFs), которые должны быть включены для устройства. Подпрограмма EnableVirtualization задает для элемента NumVFs структуры расширенных возможностей PCIe SR-IOV значение параметра NumVFs .

Если параметр EnableVirtualization имеет значение FALSE, для параметра NumVFs необходимо задать нулевое значение.

[in] EnableVfMigration

Значение BOOLEAN, указывающее, может ли базовая функция многокорневой виртуализации ввода-вывода (MR-IOV) динамически повторно подготавливать физическую функцию PCIe (PF) устройства в качестве VF во время выполнения.

Этот параметр применим только к устройствам, поддерживающим интерфейсы SR-IOV и MR-IOV. Драйвер должен задать для этого параметра значение FALSE, если устройство поддерживает только интерфейс SR-IOV, но не интерфейс MR-IOV.

[in] EnableMigrationInterrupt

Значение BOOLEAN, указывающее, следует ли маскировать прерывание, связанное с PF, во время миграции VF.

Если параметр EnableVfMigration имеет значение FALSE, драйвер также должен задать для этого параметра значение FALSE.

[in] EnableVirtualization

Значение BOOLEAN, указывающее, включена ли виртуализация в пространстве конфигурации PCIe устройства. Если параметр EnableVirtualization имеет значение TRUE, подпрограмма EnableVirtualization задает бит VF Enable поля PCIe SR-IOV Control. Подпрограмма EnableVirtualization очищает этот бит, если параметр EnableVirtualization имеет значение FALSE.

Возвращаемое значение

Подпрограмма EnableVirtualization возвращает одно из следующих значений NTSTATUS:

Код возврата Описание
STATUS_SUCCESS Операция выполнена успешно.
STATUS_INVALID_PARAMETER Параметр NumVFs равен нулю или больше значения элемента TotalVFs структуры расширенных возможностей SR-IOV для устройства.
STATUS_INVALID_DEVICE_STATE Виртуализация уже включена на устройстве, и параметр EnableVirtualization имеет значение TRUE, или виртуализация уже отключена на устройстве, а параметр EnableVirtualization имеет значение FALSE.

Комментарии

Драйверы вызывают подпрограмму EnableVirtualization для настройки полей расширенных возможностей SR-IOV в пространстве конфигурации PCIe. Этот вызов включает или отключает виртуализацию в пространстве конфигурации и указывает количество виртуальных машин, которые устройство должно предоставить структуре PCIe.

Подпрограмма EnableVirtualization предоставляется интерфейсом GUID_PCI_VIRTUALIZATION_INTERFACE .

Требования

Требование Значение
Минимальная версия клиента Поддерживается в Windows Server 2012 и более поздних версиях Windows.
Целевая платформа Персональный компьютер
Верхняя часть wdm.h (включая Wdm.h)
IRQL IRQL <= DISPATCH_LEVEL

См. также раздел

PCI_VIRTUALIZATION_INTERFACE