VPCI_WRITE_BLOCK função de retorno de chamada (vpci.h)
A rotina WriteVfConfigBlock grava um bloco de dados de configuração para uma VF (função virtual) PCI Express. Essa rotina é chamada pelo driver de uma VF PCIe em um dispositivo que dá suporte à interface SR-IOV (virtualização de E/S de raiz única).
Sintaxe
VPCI_WRITE_BLOCK VpciWriteBlock;
NTSTATUS VpciWriteBlock(
PVOID Context,
ULONG BlockId,
PVOID Buffer,
ULONG Length
)
{...}
Parâmetros
Context
[in] Um ponteiro para informações de contexto específicas da interface. O chamador passa o valor que é passado como o membro Context da estrutura VPCI_INTERFACE_STANDARD para a interface.
BlockId
[in] O identificador do bloco de configuração do VF a ser gravado. Esse identificador é proprietário do IHV (fornecedor independente de hardware) e é usado apenas pelos drivers para a função física PCIe (PF) e VF no dispositivo.
Buffer
[in] Um ponteiro para um buffer alocado pelo chamador que contém os dados de configuração a serem gravados. Para obter mais informações, consulte Comentários.
Length
[in] O número de bytes a serem gravados no bloco de configuração do VF.
Observação
O valor desse parâmetro não deve exceder VPCI_MAX_READ_WRITE_BLOCK_SIZE.
Retornar valor
A rotina ReadVfConfigBlock retornará STATUS_SUCCESS se a operação for bem-sucedida. Caso contrário, a rotina retornará um valor NTSTATUS apropriado.
Comentários
Quando a rotina WriteVfConfigBlock é chamada, o driver do PF é notificado para atualizar um bloco de configuração de VF especificado com os dados especificados.
Um bloco de configuração de VF é usado para comunicação backchannel entre os drivers do PCIe PF e um VF em um dispositivo que dá suporte à interface SR-IOV. O IHV pode definir um ou mais blocos de configuração de VF para o dispositivo. Cada bloco de configuração de VF tem um formato definido por IHV, comprimento e ID de bloco.
Os dados de configuração do VF podem ser trocados entre os seguintes drivers de maneira protegida:
- O driver VF, que é executado no sistema operacional convidado. Esse sistema operacional é executado em uma partição filho do Hyper-V.
- O driver PF, que é executado no sistema operacional de gerenciamento. Esse sistema operacional é executado dentro da partição pai do Hyper-V.
Os dados de cada bloco de configuração de VF são usados apenas pelos drivers do PF e do VF.
Observação
O IOCTL_VPCI_WRITE_BLOCK IOCTL oferece uma alternativa assíncrona à rotina WriteVfConfigBlock .
Requisitos
Requisito | Valor |
---|---|
Servidor mínimo com suporte | Windows Server 2012 |
Cabeçalho | vpci.h |
IRQL | <= DISPATCH_LEVEL |