Compartilhar via


ENABLE_VIRTUALIZATION função de retorno de chamada (wdm.h)

A rotina EnableVirtualization habilita ou desabilita a virtualização de um dispositivo PCI Express (PCIe) que dá suporte à interface de virtualização de E/S raiz única (SR-IOV).

Sintaxe

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

Um ponteiro para informações de contexto específicas da interface. O chamador passa o valor passado como o Context membro da estrutura PCI_VIRTUALIZATION_INTERFACE da interface.

[in] NumVFs

O número de VFs (funções virtuais) PCIe que devem ser habilitadas para o dispositivo. A rotina EnableVirtualization define o membro numVFs da estrutura pcie SR-IOV capacidade estendida para o valor do parâmetro numVFs.

Se o parâmetro EnableVirtualization for false, o parâmetro NumVFs deverá ser definido como zero.

[in] EnableVfMigration

Um valor BOOLEAN que indica se a função base BF (virtualização de E/S) de várias raizes (MR-IOV) pode reprovisionar dinamicamente a função física PCIe (PF) do dispositivo como um VF em tempo de execução.

Esse parâmetro só é aplicável a dispositivos que dão suporte às interfaces SR-IOV e MR-IOV. O driver deve definir esse parâmetro para FALSE se o dispositivo der suporte apenas à interface SR-IOV e não à interface MR-IOV.

[in] EnableMigrationInterrupt

Um valor BOOLEAN que indica se a interrupção associada ao PF deve ser mascarada ou desmascarada durante a migração de VF.

Se os parâmetros EnableVfMigration forem FALSE, o driver também deverá definir esse parâmetro como false.

[in] EnableVirtualization

Um valor BOOLEAN que indica se a virtualização está habilitada no espaço de configuração PCIe do dispositivo. Se o parâmetro EnableVirtualization for verdadeiro, a rotina EnableVirtualization definirá o bit Habilitar VF do campo Controle de SR-IOV PCIe. A rotina EnableVirtualization limpa esse bit se o parâmetro EnableVirtualization for FALSE.

Valor de retorno

A rotina EnableVirtualization retorna um dos seguintes valores NTSTATUS:

Código de retorno Descrição
STATUS_SUCCESS A operação foi concluída com êxito.
STATUS_INVALID_PARAMETER O parâmetro NumVFs é zero ou maior que o valor do TotalVFs membro da estrutura SR-IOV Capacidade Estendida do dispositivo.
STATUS_INVALID_DEVICE_STATE A virtualização já está habilitada no dispositivo e o parâmetro EnableVirtualization é verdadeiroou a virtualização já está desabilitada no dispositivo e o parâmetro EnableVirtualization é false.

Observações

Os drivers chamam a rotina EnableVirtualization para configurar os campos SR-IOV Capacidade Estendida no espaço de configuração do PCIe. Essa chamada habilita ou desabilita a virtualização no espaço de configuração e especifica o número de VFs que devem ser expostos à malha PCIe pelo dispositivo.

A rotina EnableVirtualization é fornecida pela interface GUID_PCI_VIRTUALIZATION_INTERFACE.

Requisitos

Requisito Valor
de cliente com suporte mínimo Com suporte no Windows Server 2012 e versões posteriores do Windows.
da Plataforma de Destino Área de trabalho
cabeçalho wdm.h (inclua Wdm.h)
IRQL IRQL <= DISPATCH_LEVEL

Consulte também

PCI_VIRTUALIZATION_INTERFACE