estrutura NDIS_RSS_SET_INDIRECTION_ENTRY (ntddndis.h)
Aviso
Algumas informações neste tópico estão relacionadas ao produto pré-relacionado, que pode ser substancialmente modificado antes de ser lançado comercialmente. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
O RSSv2 é visualizado apenas em Windows 10, versão 1803.
A estrutura NDIS_RSS_SET_INDIRECTION_ENTRY representa um comando para definir uma única entrada de tabela de indireção. Ele está contido em uma estrutura NDIS_RSS_SET_INDIRECTION_ENTRIES , que é usada no OID do OID_GEN_RSS_SET_INDIRECTION_TABLE_ENTRIES . OID_GEN_RSS_SET_INDIRECTION_TABLE_ENTRIES é um OID síncrono para RSS versão 2 (RSSv2).
Sintaxe
typedef struct _NDIS_RSS_SET_INDIRECTION_ENTRY {
NDIS_NIC_SWITCH_ID SwitchId;
NDIS_NIC_SWITCH_VPORT_ID VPortId;
ULONG Flags;
USHORT IndirectionTableIndex;
PROCESSOR_NUMBER TargetProcessorNumber;
NDIS_STATUS EntryStatus;
} NDIS_RSS_SET_INDIRECTION_ENTRY, *PNDIS_RSS_SET_INDIRECTION_ENTRY;
Membros
SwitchId
Um valor NDIS_NIC_SWITCH_ID que representa a opção NIC em que o VPort reside.
O identificador de comutador é um inteiro entre zero e o número de opções compatíveis com o adaptador de rede. Um valor NDIS_DEFAULT_SWITCH_ID indica o comutador de adaptador de rede padrão.
Esse campo deve ser definido como 0 no caso RSS nativo.
VPortId
Um valor NDIS_NIC_SWITCH_VPORT_ID que representa o identificador VPort.
Esse campo deve ser definido como 0 no caso RSS nativo.
Flags
Um valor ULONG que contém um OR bit a bit de sinalizadores. Esse membro qualifica as informações nessa estrutura.
Os sinalizadores possíveis são os seguintes:
IndirectionTableIndex
O índice de hash do ITE que atualmente aponta para a CPU atual e está sendo modificado para apontar para outro processador. Quando a tabela de indireção está inativa (o RSS está desabilitado), o driver de miniporta deve acompanhar as atualizações para entradas de tabela de indireção para que ele tenha a tabela de indireção correta quando o RSS estiver habilitado.
TargetProcessorNumber
O número do processador de destino para o qual o ITE deve apontar após a conclusão. O driver de miniporta deve ter êxito nas movimentações de ITE do processador atual para o atual.
EntryStatus
Um código NDIS_STATUS que indica o status da operação de movimentação para essa entrada. Como NDIS_RSS_SET_INDIRECTION_ENTRY é usado no contexto de uma chamada OID síncrona, o driver de miniporto não pode retornar NDIS_STATUS_PENDING para esse membro.
Para simplificar a implementação dos drivers de miniport, o protocolo de camada superior inicializará esse campo para NDIS_STATUS_PENDING. Os drivers de miniporto devem substituir NDIS_STATUS_PENDING por um código de status NDIS com êxito ou falha. Se a camada superior detectar que esse campo ainda está NDIS_STATUS_PENDING após a conclusão do OID do OID_GEN_RSS_SET_INDIRECTION_TABLE_ENTRIES, isso causará um bug no sistema marcar e indicará que o driver de miniporto está em falha.
Importante
Todas as estruturas NDIS_RSS_SET_INDIRECTION_ENTRY em um grupo, contidas em uma estrutura NDIS_RSS_SET_INDIRECTION_ENTRIES , devem ser marcadas com o mesmo EntryStatus.
Se ocorrer um erro com esse comando de movimentação, defina EntryStatus como um dos seguintes códigos de status para essa condição de erro:
Código de status | Condição de erro |
---|---|
NDIS_STATUS_INVALID_PARAMETER |
|
NDIS_STATUS_INVALID_PORT_STATE | O VPort não está ativado ou está em algum outro estado que o impede de aceitar OIDs RSSv2. |
NDIS_STATUS_NOT_ACCEPTED | A CPU do ator era inválida. |
NDIS_STATUS_INVALID_DATA | Para um parâmetro de direção ativo , o novo processador não faz parte do conjunto de processadores RSS do adaptador. Observe que os parâmetros inativos só precisam ser rastreados. Eles são validados posteriormente, durante a transição de estado RSS (para ativar ou desativar). |
NDIS_STATUS_NO_QUEUES | Um grupo de entradas de comando falha no "número de filas" marcar para o VPort especificado por esse grupo. |
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Com suporte no NDIS 6.80 e posterior. |
Cabeçalho | ntddndis.h (inclua Ndis.h) |
Confira também
NDIS_RSS_SET_INDIRECTION_ENTRIES
OID_GEN_RSS_SET_INDIRECTION_TABLE_ENTRIES