DXGKCB_ALLOCATEADL función de devolución de llamada (d3dkmddi.h)

DXGKCB_ALLOCATEADL crea una lista de descriptores de direcciones (ADL).

Sintaxis

DXGKCB_ALLOCATEADL DxgkcbAllocateadl;

NTSTATUS DxgkcbAllocateadl(
  [in/out] IN_OUT_PDXGKARGCB_ALLOCATE_ADL pArgs
)
{...}

Parámetros

[in/out] pArgs

Puntero a una estructura de DXGKARGCB_ALLOCATE_ADL que contiene información sobre el ADL que se va a crear. Si se ejecuta correctamente, devuelve una estructura de DXGK_ADL con una lista de direcciones de página que se pueden usar para programar el hardware.

Valor devuelto

Devuelve STATUS_SUCCESS si la operación se realiza correctamente. De lo contrario, devuelve un código de error NTSTATUS adecuado, como STATUS_INVALID_PARAMETER.

Comentarios

Las funciones DXGKCB_ALLOCATEADL y DXGKCB_FREEADL se usan para crear y destruir ADL que describen las direcciones de memoria que se pueden programar (asignar) a la GPU. La memoria subyacente puede apuntar a memoria lógica o física en función de si se está usando la IOMMU, por lo que el controlador no debe intentar suponer que estas direcciones representan páginas físicas.

Cuando se asigna un ADL desde el objeto físico, Dxgkrnl garantiza que esta memoria permanece bloqueada y no se puede paginar durante la vigencia del ADL.

Consulte la reasignación de DMA de IOMMU para obtener más información.

DXGKCB_XXX funciones se implementan mediante Dxgkrnl. Para usar esta función de devolución de llamada, establezca los miembros adecuados de DXGKARGCB_ALLOCATE_ADL y, a continuación, llame a DxgkCbAllocateAdl a través del DXGKRNL_INTERFACE.

Requisitos

Requisito Value
Servidor mínimo compatible Windows Server 2022 (WDDM 2.9)
Encabezado d3dkmddi.h
IRQL PASSIVE_LEVEL

Consulte también

DXGKARGCB_ALLOCATE_ADL

DXGKCB_FREEADL

DXGKRNL_INTERFACE