// d3dkmddi.h
DXGKCB_FREEADL DxgkcbFreeadl;
VOID DxgkcbFreeadl(
[in] IN_CONST_PDXGKARGCB_FREE_ADL pArgs
)
{...}
View the official Windows Driver Kit DDI referenceNo description available.
DXGKCB_FREEADL destroys an address descriptor list (ADL) created in a prior call to DXGKCB_ALLOCATEADL.
pArgs [in]Pointer to a DXGKARGCB_FREE_ADL structure that describes the ADL to destroy.
The DXGKCB_ALLOCATEADL and DxgkCbFreeAdl functions are used to create and destroy address descriptor lists that describe memory addresses that can be programmed to the GPU. The underlying memory can point to either logical or physical memory depending on whether the IOMMU is being used, so the driver must not attempt to assume that these addresses represent physical pages.
Once an ADL is freed, the memory referenced by that ADL must not be accessed by the GPU.
See IOMMU DMA remapping for more information.
DXGKCB_XXX functions are implemented by Dxgkrnl. To use this callback function, set the members of DXGKARGCB_FREE_ADL and then call DxgkCbFreeAdl via the DXGKRNL_INTERFACE.