Partilhar via


DXGKCB_ALLOCATEPAGESFORMDL função de retorno de chamada (d3dkmddi.h)

DXGKCB_ALLOCATEPAGESFORMDL aloca páginas de memória física para uma MDL (lista de descritores de memória) a ser mapeada para o espaço de endereço lógico da IOMMU.

Sintaxe

DXGKCB_ALLOCATEPAGESFORMDL DxgkcbAllocatepagesformdl;

NTSTATUS DxgkcbAllocatepagesformdl(
  [in]     IN_CONST_HANDLE hAdapter,
  [in/out] INOUT_PDXGKARGCB_ALLOCATEPAGESFORMDL pAllocatePagesForMdl
)
{...}

Parâmetros

[in] hAdapter

Um identificador para o adaptador de exibição.

[in/out] pAllocatePagesForMdl

Ponteiro para uma estrutura de DXGKARGCB_ALLOCATEPAGESFORMDL que contém argumentos para alocar páginas para MDL.

Valor de retorno

Retorne STATUS_SUCCESS se a operação for bem-sucedida. Caso contrário, retorne um código de erro NTSTATUS apropriado.

Observações

Essa função de retorno de chamada é uma função de driver de porta gráfica do Windows equivalente à função MmAllocatePagesForMdl.

DXGKCB_XXX funções são implementadas por Dxgkrnl. Para usar essa função de retorno de chamada, defina os membros apropriados do DXGKARGCB_ALLOCATEPAGESFORMDL e chame DxgkCbAllocatePagesForMdl por meio do DXGKRNL_INTERFACE.

Toda a memória acessada pela GPU durante operações de paginação ou mapeada por meio do GpuMmu deve ser mapeada para a IOMMU. Dxgkrnl fornece retornos de chamada para o driver do modo kernel para permitir a alocação e o remapeamento em uma etapa.

Nota

As chamadas para DXGKCB_ALLOCATEPAGESFORMDL são limitadas à restrição de MDL de PAGE_SIZE de 4 GB e Dxgkrnl sempre especifica o sinalizador MM_ALLOCATE_FULLY_REQUIRED na chamada interna para função MmAllocatePagesForMdlEx. O driver também não deve bloquear nenhuma memória. Dxgkrnl gerenciará páginas bloqueadas para o driver e, depois que a memória for remapeada, o endereço lógico das páginas fornecidas ao driver poderá não corresponder mais aos endereços físicos.

Consulte de isolamento de GPU baseado em IOMMU para obter mais informações.

Requisitos

Requisito Valor
de cliente com suporte mínimo Windows 10, versão 1803 (WDDM 2.4)
cabeçalho d3dkmddi.h
IRQL PASSIVE_LEVEL

Consulte também

DXGKARGCB_ALLOCATEPAGESFORMDL

DXGKCB_FREEPAGESFROMMDL

DXGKRNL_INTERFACE