Função NdisMSetVirtualFunctionBusData (ndis.h)
Um driver de miniporto chama a função NdisMSetVirtualFunctionBusData para gravar dados no espaço de configuração do PCI Express (PCIe) de uma VF (Função Virtual) no adaptador de rede.
Sintaxe
ULONG NdisMSetVirtualFunctionBusData(
[in] NDIS_HANDLE NdisMiniportHandle,
[in] NDIS_SRIOV_FUNCTION_ID VFId,
[in] PVOID Buffer,
[in] ULONG Offset,
[in] ULONG Length
);
Parâmetros
[in] NdisMiniportHandle
O identificador do adaptador de rede que o NDIS passou para o parâmetro MiniportAdapterHandle de MiniportInitializeEx.
[in] VFId
O identificador do VF no qual os dados são gravados em seu espaço de configuração de PCI.
[in] Buffer
Um ponteiro para um buffer que contém os dados a serem gravados no espaço de configuração de PCI.
[in] Offset
O deslocamento, em unidades de bytes, no espaço de configuração de PCI no qual os dados são gravados.
[in] Length
O comprimento, em unidades de bytes, dos dados a serem gravados.
Valor de retorno
NdisMSetVirtualFunctionBusData retorna o número de bytes gravados no espaço de configuração de PCI. Se a operação de gravação falhar, NdisMSetVirtualFunctionBusData retornará zero.
Observações
O driver de miniporto PF normalmente chama NdisMSetVirtualFunctionBusData ao lidar com uma solicitação de método OID de OID_SRIOV_WRITE_VF_CONFIG_SPACE.
No entanto, o driver pode chamar essa função a qualquer momento após a virtualização ter sido habilitada no adaptador de rede por meio de uma chamada para NdisMEnableVirtualization.
Para obter mais informações sobre a comunicação backchannel dentro da interface de virtualização de E/S raiz única (SR-IOV), consulte SR-IOVde Comunicação Backchannel PF/VF.
Para obter mais informações sobre a interface SR-IOV, consulte Visão geral da virtualização de E/S de Raiz Única (SR-IOV).
interfiguração para um motorista de ônibus virtual
Se um IHV (fornecedor de hardware independente) fornecer um VBD (driver de ônibus virtual) como parte de seu pacote de driver SR-IOV , seu driver de miniporto não deverá chamar NdisMSetVirtualFunctionBusData. Em vez disso, o driver deve fazer a interface com o VBD por meio de um canal de comunicação privado e solicitar que a chamada do VBD SetVirtualFunctionData. Essa função é exposta a partir da interface de GUID_PCI_VIRTUALIZATION_INTERFACE que é compatível com o driver de ônibus PCI subjacente.O VBD executado no sistema operacional de gerenciamento da partição pai Hyper-V pode consultar a interface GUID_PCI_VIRTUALIZATION_INTERFACE emitindo uma solicitação IRP_MN_QUERY_INTERFACE para seu objeto de dispositivo físico (PDO) no barramento PCI. Essa solicitação deve ser feita de IRQL = PASSIVE_LEVEL. Nesta solicitação, o driver deve definir o parâmetro InterfaceType como GUID_PCI_VIRTUALIZATION_INTERFACE.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Nenhum com suporte, com suporte no NDIS 6.30 e posterior. |
servidor com suporte mínimo | Windows Server 2012 |
da Plataforma de Destino | Universal |
cabeçalho | ndis.h (inclua Ndis.h) |
biblioteca | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
Consulte também
GUID_PCI_VIRTUALIZATION_INTERFACE