DXGKCB_FREEADL callback function (d3dkmddi.h)

DXGKCB_FREEADL destroys an address descriptor list (ADL) created in a prior call to DXGKCB_ALLOCATEADL.

Syntax

DXGKCB_FREEADL DxgkcbFreeadl;

void DxgkcbFreeadl(
  [in] IN_CONST_PDXGKARGCB_FREE_ADL pArgs
)
{...}

Parameters

[in] pArgs

Pointer to a DXGKARGCB_FREE_ADL structure that describes the ADL to destroy.

Return value

None

Remarks

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.

Requirements

Requirement Value
Minimum supported server Windows Server 2022 (WDDM 2.9)
Header d3dkmddi.h
IRQL PASSIVE_LEVEL

See also

DXGKARGCB_FREE_ADL

DxgkCbAllocateAdl

DXGKRNL_INTERFACE