Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Um driver sobreposto emite uma solicitação de método de identificador de objeto (OID) de OID_NIC_SWITCH_CREATE_VPORT para criar uma porta virtual não padrão (VPort) no comutador NIC de um adaptador de rede. Essa solicitação de método OID também anexa o VPort criado à função física (PF) PCI Express (PCIe) do adaptador de rede ou a uma função virtual (VF) PCIe alocada anteriormente.
Drivers sobrepostos emitem essa solicitação de método OID para o driver de miniporta para PF do adaptador de rede. Essa solicitação de método OID é necessária para drivers de miniporta PF que suportam a interface de virtualização de E/S de raiz única (SR-IOV).
O InformationBuffer membro da estrutura NDIS_OID_REQUEST contém um ponteiro para a estrutura NDIS_NIC_SWITCH_VPORT_PARAMETERS.
Comentários
O driver sobreposto inicializa a estrutura NDIS_NIC_SWITCH_VPORT_PARAMETERS com as informações de configuração sobre o VPort não padrão a ser criado. As informações de configuração incluem a função PCIe à qual o VPort não padrão está anexado e o número de pares de filas para o VPort não padrão.
Quando o driver de miniporta PF é emitido a solicitação OID, o driver aloca os recursos de hardware e software associados ao VPort não padrão especificado. Depois que todos os recursos são alocados com êxito, o driver de miniporta PF conclui o OID com êxito retornando NDIS_STATUS_SUCCESS de MiniportOidRequest.
Se a solicitação de OID_NIC_SWITCH_CREATE_VPORT for concluída com êxito, o driver de miniporta PF e o driver sobrejacente deverão manter o valor VPortId do VPort não padrão para operações sucessivas. O VPortId valor é usado durante estas operações:
O NDIS e os drivers sobrepostos usam o valor VPortId para identificar o VPort não padrão em solicitações OID sucessivas relacionadas a esse VPort, como OID_NIC_SWITCH_VPORT_PARAMETERS e OID_NIC_SWITCH_DELETE_VPORT.
Durante as operações de envio, o NDIS especifica o valor VPortId para identificar o VPort do qual um pacote foi enviado. Esse valor é especificado dentro dos dados de NDIS_NET_BUFFER_LIST_FILTERING_INFO fora de banda (OOB) da estrutura NET_BUFFER_LIST.
Durante as operações de recebimento, o driver de miniporta PF especifica o valor VPortId para o qual um pacote deve ser encaminhado. Esse valor também é especificado nos dados de NDIS_NET_BUFFER_LIST_FILTERING_INFO OOB da estrutura NET_BUFFER_LIST.
Para obter mais informações, consulte Criando uma porta virtual.
Observação O VPort padrão sempre existe e não é criado por meio de uma solicitação OID de OID_NIC_SWITCH_CREATE_VPORT. O VPort padrão tem um identificador de NDIS_DEFAULT_VPORT_ID. Quando o driver de miniporta PF cria um comutador NIC, o driver conecta automaticamente o VPort padrão ao PF do adaptador de rede.
Códigos de status de retorno
NDIS ou o driver de miniporta PF retorna um dos seguintes códigos de status para a solicitação de método OID de OID_NIC_SWITCH_CREATE_SWITCH.
| Código de status | Descrição |
|---|---|
NDIS_STATUS_SUCCESS |
A solicitação OID foi concluída com êxito. |
NDIS_STATUS_NOT_SUPPORTED |
O driver de miniporta PF não suporta a interface SR-IOV ou não está habilitado para usar a interface. |
NDIS_STATUS_INVALID_PARAMETER |
Um ou mais dos membros da estrutura NDIS_NIC_SWITCH_VPORT_PARAMETERS têm valores inválidos. |
NDIS_STATUS_INVALID_LENGTH |
O comprimento do buffer de informações é menor que sizeof(NDIS_NIC_SWITCH_VPORT_PARAMETERS). O driver de miniporta PF deve definir o DATA. METHOD_INFORMATION. BytesNeeded membro na estrutura NDIS_OID_REQUEST para o tamanho mínimo de buffer necessário. |
NDIS_STATUS_FAILURE |
O pedido foi rejeitado por outros motivos. |
Requerimentos
Versão |
Suportado no NDIS 6.30 e posterior. |
Cabeçalho |
Ntddndis.h (inclui Ndis.h) |