DXGKCB_ALLOCATEADL Rückruffunktion (d3dkmddi.h)
DXGKCB_ALLOCATEADL erstellt eine Adressdeskriptorliste (ADL).
Syntax
DXGKCB_ALLOCATEADL DxgkcbAllocateadl;
NTSTATUS DxgkcbAllocateadl(
[in/out] IN_OUT_PDXGKARGCB_ALLOCATE_ADL pArgs
)
{...}
Parameter
[in/out] pArgs
Zeiger auf eine DXGKARGCB_ALLOCATE_ADL-Struktur , die Informationen zur zu erstellenden ADL enthält. Gibt bei Erfolg eine DXGK_ADL-Struktur mit einer Liste von Seitenadressen zurück, die zum Programmieren der Hardware verwendet werden können.
Rückgabewert
Gibt STATUS_SUCCESS zurück, wenn der Vorgang erfolgreich ist. Andernfalls wird ein entsprechender NTSTATUS-Fehlercode zurückgegeben, z. B. STATUS_INVALID_PARAMETER.
Hinweise
Die funktionen DXGKCB_ALLOCATEADL und DXGKCB_FREEADL werden verwendet, um ADLs zu erstellen und zu zerstören, die Speicheradressen beschreiben, die der GPU programmiert (zugeordnet) werden können. Der zugrunde liegende Arbeitsspeicher kann entweder auf logischen oder physischen Arbeitsspeicher verweisen, je nachdem, ob die IOMMU verwendet wird. Daher darf der Treiber nicht versuchen, davon auszugehen, dass diese Adressen physische Seiten darstellen.
Wenn eine ADL aus dem physischen Objekt zugeordnet wird, garantiert Dxgkrnl , dass dieser Speicher gesperrt bleibt und für die Lebensdauer der ADL nicht ausgelagert werden kann.
Weitere Informationen finden Sie unter IOMMU DMA Remapping .
DXGKCB_XXX Funktionen werden von Dxgkrnl implementiert. Um diese Rückruffunktion zu verwenden, legen Sie die entsprechenden Member von DXGKARGCB_ALLOCATE_ADL fest, und rufen Sie dann DxgkCbAllocateAdl über den DXGKRNL_INTERFACE auf.
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Server) | Windows Server 2022 (WDDM 2.9) |
Kopfzeile | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |