EVT_WDF_IO_ALLOCATE_REQUEST_RESOURCES função de retorno de chamada (wdfio.h)

[Aplica-se somente ao KMDF]

A função de retorno de chamada EvtIoAllocateRequestResources de um driver aloca recursos específicos da solicitação que o driver requer para processar a solicitação especificada.

Sintaxe

EVT_WDF_IO_ALLOCATE_REQUEST_RESOURCES EvtWdfIoAllocateRequestResources;

NTSTATUS EvtWdfIoAllocateRequestResources(
  [in] WDFQUEUE Queue,
  [in] WDFREQUEST Request
)
{...}

Parâmetros

[in] Queue

Um identificador para um objeto de fila de E/S.

[in] Request

Um identificador para um objeto de solicitação que a estrutura criou. A estrutura ainda não adicionou o objeto de solicitação à fila de E/S especificada pelo identificador do parâmetro Queue .

Retornar valor

A função de retorno de chamada EvtIoAllocateRequestResources deve retornar STATUS_SUCCESS ou outro valor status para o qual NT_SUCCESS(status) é igual a TRUE se a função não encontrar erros. Caso contrário, essa função deve retornar um valor status para o qual NT_SUCCESS(status) é igual a FALSE.

Comentários

Um driver pode registrar uma função de retorno de chamada EvtIoAllocateRequestResources quando chama WdfIoQueueAssignForwardProgressPolicy.

Se o driver registrar uma função de retorno de chamada EvtIoAllocateRequestResources , a estrutura chamará a função imediatamente depois de criar um objeto de solicitação para um IRP (pacote de solicitação de E/S) que o gerenciador de E/S enviou ao driver.

A função de retorno de chamada pode alocar recursos que o driver precisará para processar a solicitação posteriormente, depois que o driver tiver obtido o objeto de solicitação da fila de E/S especificada pelo identificador do parâmetro Queue .

Se a função de retorno de chamada alocar recursos com êxito e retornar STATUS_SUCCESS, a estrutura eventualmente entregará o objeto de solicitação ao driver.

Se ocorrer um erro de alocação de recurso, como uma situação de memória insuficiente, a função de retorno de chamada deverá retornar um erro status valor. Nesse caso, a estrutura segue a política de progresso do driver, que o driver especificou anteriormente com um valor WDF_IO_FORWARD_PROGRESS_RESERVED_POLICY quando chamou WdfIoQueueAssignForwardProgressPolicy.

Para obter mais informações sobre a função de retorno de chamada EvtIoAllocateRequestResources , consulte Garantindo o progresso das operações de E/S.

Essa função de retorno de chamada pode ser chamada em IRQL <= DISPATCH_LEVEL. Se o IRQL for PASSIVE_LEVEL, a estrutura chamará a função de retorno de chamada em uma região crítica.

Requisitos

Requisito Valor
Plataforma de Destino Universal
Versão mínima do KMDF 1,9
Cabeçalho wdfio.h (inclua Wdf.h)
IRQL <=DISPATCH_LEVEL (consulte a seção Comentários)

Confira também

EvtIoAllocateResourcesForReservedRequest

WdfIoQueueAssignForwardProgressPolicy