NDK_FN_CREATE_QP_WITH_SRQ função de retorno de chamada (ndkpi.h)

A função NdkCreateQpWithSrq (NDK_FN_CREATE_QP_WITH_SRQ) cria um objeto QP (par de filas) NDK com um objeto SRQ (fila de recebimento compartilhado) NDK.

Sintaxe

NDK_FN_CREATE_QP_WITH_SRQ NdkFnCreateQpWithSrq;

NTSTATUS NdkFnCreateQpWithSrq(
  [in]           NDK_PD *pNdkPd,
  [in]           NDK_CQ *pReceiveCq,
  [in]           NDK_CQ *pInitiatorCq,
  [in]           NDK_SRQ *pSrq,
  [in, optional] PVOID QPContext,
  [in]           ULONG InitiatorQueueDepth,
  [in]           ULONG MaxInitiatorRequestSge,
  [in]           ULONG InlineDataSize,
  [in]           NDK_FN_CREATE_COMPLETION CreateCompletion,
  [in, optional] PVOID RequestContext,
                 NDK_QP **ppNdkQp
)
{...}

Parâmetros

[in] pNdkPd

Um ponteiro para um objeto de PD (domínio de proteção) do NDK (NDK_PD).

[in] pReceiveCq

Um ponteiro para uma CQ (fila de conclusão) a ser usada para conclusões de solicitação de recebimento (NDK_CQ).

[in] pInitiatorCq

Um ponteiro para um CQ a ser usado para conclusões de solicitação do iniciador.

[in] pSrq

Um ponteiro para um objeto SRQ (fila de recebimento compartilhado) NDK (NDK_SRQ) para postar solicitações de recebimento.

[in, optional] QPContext

Um valor de contexto a ser retornado no membro QPContext da estrutura NDK_RESULT para todas as solicitações que são postadas sobre esse QP.

[in] InitiatorQueueDepth

O número máximo de solicitações de iniciador que podem ser pendentes no QP. Esse valor deve ser menor ou igual ao valor no membro MaxInitiatorQueueDepth da estrutura NDK_ADAPTER_INFO .

[in] MaxInitiatorRequestSge

O número máximo de SGEs que podem ter suporte em uma única solicitação de iniciador. Esse valor deve ser menor ou igual ao valor no membro MaxInitiatorRequestSge da estrutura NDK_ADAPTER_INFO.

[in] InlineDataSize

A quantidade máxima de dados embutidos em bytes que podem ser enviados em uma única solicitação de envio ou gravação. Esse valor deve ser menor ou igual ao valor no membro MaxInlineDataSize da estrutura NDK_ADAPTER_INFO.

[in] CreateCompletion

Um ponteiro para uma função NdkCreateCompletion (NDK_FN_CREATE_COMPLETION) que conclui a criação de um objeto NDK.

[in, optional] RequestContext

Um valor de contexto que o provedor NDK passa de volta para a função NdkCreateCompletion especificada no parâmetro CreateCompletion .

ppNdkQp

Um ponteiro para um objeto QP criado (NDK_QP) será retornado nesse local se a solicitação for bem-sucedida sem retornar STATUS_PENDING. Se a solicitação retornar STATUS_PENDING esse parâmetro será ignorado e o objeto criado será retornado com o retorno de chamada especificado no parâmetro CreateCompletion .

Retornar valor

A função NdkCreateQpWithSrq retorna um dos seguintes códigos NTSTATUS.

Código de retorno Descrição
STATUS_SUCCESS
O objeto QP foi criado com êxito e retornado com o parâmetro *ppNdkQp .
STATUS_PENDING
A operação está pendente e será concluída posteriormente. O provedor chamará a função especificada no parâmetro CreateCompletion (NDK_FN_CREATE_COMPLETION) para concluir a operação pendente.
STATUS_INVALID_PARAMETER
A solicitação falhou porque o InitiatorQueueDepth, MaxInitiatorRequestSge ou InlineDataSize solicitado não está dentro dos limites especificados na estrutura NDK_ADAPTER_INFO .
STATUS_INSUFFICIENT_RESOURCES
A solicitação falhou devido a recursos insuficientes.
Importante A solicitação pode falhar embutida, bem como de forma assíncrona com esse código status.
 
Outros códigos de status
Ocorreu um erro.

Comentários

A função NdkCreateQpWithSrq cria um objeto QP (par de filas) NDK com uma SRQ (fila de recebimento compartilhado). Um QP consiste em uma fila de recebimento e uma fila de iniciadores. A fila de recebimento é usada para postar solicitações de recebimento. Uma fila de iniciadores é usada para iniciar solicitações de envio, associação, registro rápido, leitura, gravação e invalidação.

Se a função retornar STATUS_SUCCESS, o objeto criado será retornado no parâmetro ppNdkQp . Se NdkCreateQpWithSrq retornar STATUS_PENDING, o objeto criado será retornado pela função NdkCreateCompletion (NDK_FN_CREATE_COMPLETION) especificada no parâmetro CreateCompletion .

Requisitos

Requisito Valor
Cliente mínimo com suporte Nenhum com suporte, com suporte no NDIS 6.30 e posterior.
Servidor mínimo com suporte Windows Server 2012
Plataforma de Destino Windows
Cabeçalho ndkpi.h (inclua Ndkpi.h)
IRQL <=DISPATCH_LEVEL

Confira também

Requisitos de tempo de vida do objeto NDKPI

NDK_ADAPTER_INFO

NDK_CQ

NDK_FN_CREATE_COMPLETION

NDK_PD

NDK_QP

NDK_RESULT

NDK_SRQ