DXGKCB_ALLOCATEADL função de retorno de chamada (d3dkmddi.h)
DXGKCB_ALLOCATEADL cria uma ADL (lista de descritores de endereço).
Sintaxe
DXGKCB_ALLOCATEADL DxgkcbAllocateadl;
NTSTATUS DxgkcbAllocateadl(
[in/out] IN_OUT_PDXGKARGCB_ALLOCATE_ADL pArgs
)
{...}
Parâmetros
[in/out] pArgs
Ponteiro para uma estrutura DXGKARGCB_ALLOCATE_ADL que contém informações sobre o ADL a ser criado. Com êxito, retorna uma estrutura DXGK_ADL com uma lista de endereços de página que podem ser usados para programar o hardware.
Retornar valor
Retorna STATUS_SUCCESS se a operação for bem-sucedida. Caso contrário, retorna um código de erro NTSTATUS apropriado, como STATUS_INVALID_PARAMETER.
Comentários
As funções DXGKCB_ALLOCATEADL e DXGKCB_FREEADL são usadas para criar e destruir ADLs que descrevem endereços de memória que podem ser programados (mapeados) para a GPU. A memória subjacente pode apontar para memória lógica ou física, dependendo se a IOMMU está sendo usada, portanto, o driver não deve tentar assumir que esses endereços representam páginas físicas.
Quando um ADL é alocado do objeto físico, Dxgkrnl garante que essa memória permaneça bloqueada e não seja paginável durante o tempo de vida do ADL.
Consulte Remapeamento de DMA do IOMMU para obter mais informações.
DXGKCB_XXX funções são implementadas por Dxgkrnl. Para usar essa função de retorno de chamada, defina os membros apropriados do DXGKARGCB_ALLOCATE_ADL e chame DxgkCbAllocateAdl por meio do DXGKRNL_INTERFACE.
Requisitos
Requisito | Valor |
---|---|
Servidor mínimo com suporte | Windows Server 2022 (WDDM 2.9) |
Cabeçalho | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |