DXGKCB_ALLOCATEADL funzione di callback (d3dkmddi.h)
DXGKCB_ALLOCATEADL crea un elenco di descrittori di indirizzi (ADL).
Sintassi
DXGKCB_ALLOCATEADL DxgkcbAllocateadl;
NTSTATUS DxgkcbAllocateadl(
[in/out] IN_OUT_PDXGKARGCB_ALLOCATE_ADL pArgs
)
{...}
Parametri
[in/out] pArgs
Puntatore a una struttura DXGKARGCB_ALLOCATE_ADL contenente informazioni sull'ADL da creare. In caso di esito positivo, restituisce una struttura DXGK_ADL con un elenco di indirizzi di pagina che possono essere usati per programmare l'hardware.
Valore restituito
Restituisce STATUS_SUCCESS se l'operazione ha esito positivo. In caso contrario, restituisce un codice di errore NTSTATUS appropriato, ad esempio STATUS_INVALID_PARAMETER.
Commenti
Le funzioni DXGKCB_ALLOCATEADL e DXGKCB_FREEADL vengono usate per creare ed eliminare le adcl che descrivono gli indirizzi di memoria che possono essere programmati (mappati) alla GPU. La memoria sottostante può puntare alla memoria logica o fisica a seconda che venga usata l'IOMMU, quindi il driver non deve tentare di presupporre che questi indirizzi rappresentino pagine fisiche.
Quando un ADL viene allocato dall'oggetto fisico, Dxgkrnl garantisce che la memoria rimanga bloccata ed è non paging per la durata di ADL.
Per altre informazioni, vedere Il mapping DMA di IOMMU .
DXGKCB_XXX funzioni vengono implementate da Dxgkrnl. Per usare questa funzione di callback, impostare i membri appropriati di DXGKARGCB_ALLOCATE_ADL e quindi chiamare DxgkCbAllocateAdl tramite il DXGKRNL_INTERFACE.
Requisiti
Requisito | Valore |
---|---|
Server minimo supportato | Windows Server 2022 (WDDM 2.9) |
Intestazione | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |