Função ExFreeToNPagedLookasideList (wdm.h)
A rotina ExFreeToNPagedLookasideList retorna uma entrada nãopagada para a lista lookaside fornecida ou para pool nãopagado.
Sintaxe
void ExFreeToNPagedLookasideList(
[in, out] PNPAGED_LOOKASIDE_LIST Lookaside,
[in] PVOID Entry
);
Parâmetros
[in, out] Lookaside
Um ponteiro para a estrutura NPAGED_LOOKASIDE_LIST para a lista lookaside, que o chamador já inicializou com ExInitializeNPagedLookasideList.
[in] Entry
Um ponteiro para a entrada a ser liberada. O chamador obteve esse ponteiro de uma chamada anterior para ExAllocateFromNPagedLookasideList.
Valor de retorno
Nenhum
Observações
Cuidado
A partir do Windows 11, versão 22H2, essa função foi alterada de embutida para exportada. Como resultado, se você criar o driver visando a versão mais recente do Windows, ele falhará ao carregar em versões mais antigas do sistema operacional. Para alterar a versão do sistema operacional de destino no Visual Studio, selecione Propriedades de Configuração>Configurações de Driver>Geral.
ExFreeToNPagedLookasideList é a recíproca de ExAllocateFromNPagedLookasideList. Ele libera uma entrada alocada por chamador de volta para a lista lookaside do chamador ou para o pool nãopagado quando essa entrada não está mais em uso.
A mesma entrada pode ser realocada ou outra entrada alocada posteriormente com uma chamada subsequente para ExAllocateFromNPagedLookasideList. O usuário da lista lookaside pode alocar e liberar essas entradas dinamicamente conforme necessário até chamar ExDeleteNPagedLookasideList, que libera todas as entradas pendentes na lista antes de limpar o estado do sistema para a lista lookaside fornecida e retorna o controle.
Se a lista lookaside especificada ainda não tiver atingido o número máximo de entradas determinado pelo sistema, ExFreeToNPagedLookasideList inserirá a entrada fornecida na frente da lista. Caso contrário, o buffer no Entry será liberado para o pool nãopagado usando a rotina de Gratuita fornecida pelo chamador, se houver, que foi configurada quando a lista lookaside foi inicializada ou ExFreePool.
Para obter mais informações, consulte Usando listas lookaside.
Requisitos
Consulte também
ExAllocateFromNPagedLookasideList