DXGKCB_ALLOCATEADL fonction de rappel (d3dkmddi.h)
DXGKCB_ALLOCATEADL crée une liste de descripteurs d’adresse (ADL).
Syntaxe
DXGKCB_ALLOCATEADL DxgkcbAllocateadl;
NTSTATUS DxgkcbAllocateadl(
[in/out] IN_OUT_PDXGKARGCB_ALLOCATE_ADL pArgs
)
{...}
Paramètres
[in/out] pArgs
Pointeur vers une structure DXGKARGCB_ALLOCATE_ADL qui contient des informations sur ADL à créer. En cas de réussite, retourne une structure DXGK_ADL avec une liste d’adresses de page qui peuvent être utilisées pour programmer le matériel.
Valeur de retour
Retourne STATUS_SUCCESS si l’opération réussit. Sinon, retourne un code d’erreur NTSTATUS approprié, tel que STATUS_INVALID_PARAMETER.
Remarques
Les fonctions DXGKCB_ALLOCATEADL et DXGKCB_FREEADL sont utilisées pour créer et détruire des ADL qui décrivent les adresses mémoire qui peuvent être programmées (mappées) au GPU. La mémoire sous-jacente peut pointer vers une mémoire logique ou physique selon que l’IOMMU est utilisé, de sorte que le pilote ne doit pas tenter de supposer que ces adresses représentent des pages physiques.
Lorsqu’un ADL est alloué à partir de l’objet physique, Dxgkrnl garantit que cette mémoire reste verrouillée et n’est pas paginable pendant la durée de vie de l’ADL.
Pour plus d’informations, consultez de remapping IOMMU DMA.
DXGKCB_XXX fonctions sont implémentées par Dxgkrnl. Pour utiliser cette fonction de rappel, définissez les membres appropriés de DXGKARGCB_ALLOCATE_ADL, puis appelez DxgkCbAllocateAdl via le DXGKRNL_INTERFACE.
Exigences
Exigence | Valeur |
---|---|
serveur minimum pris en charge | Windows Server 2022 (WDDM 2.9) |
d’en-tête | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |