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 |
---|---|
|
O objeto QP foi criado com êxito e retornado com o parâmetro *ppNdkQp . |
|
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. |
|
A solicitação falhou porque o InitiatorQueueDepth, MaxInitiatorRequestSge ou InlineDataSize solicitado não está dentro dos limites especificados na estrutura NDK_ADAPTER_INFO . |
|
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.
|
|
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 |