DXGKCB_ALLOCATEADL 콜백 함수(d3dkmddi.h)

DXGKCB_ALLOCATEADL ADL(주소 설명자 목록)을 만듭니다.

구문

DXGKCB_ALLOCATEADL DxgkcbAllocateadl;

NTSTATUS DxgkcbAllocateadl(
  [in/out] IN_OUT_PDXGKARGCB_ALLOCATE_ADL pArgs
)
{...}

매개 변수

[in/out] pArgs

만들 ADL에 대한 정보가 포함된 DXGKARGCB_ALLOCATE_ADL 구조체에 대한 포인터입니다. 성공하면 하드웨어를 프로그래밍하는 데 사용할 수 있는 페이지 주소 목록이 포함된 DXGK_ADL 구조를 반환합니다.

반환 값

작업이 성공하면 STATUS_SUCCESS 반환합니다. 그렇지 않으면 는 STATUS_INVALID_PARAMETER 같은 적절한 NTSTATUS 오류 코드를 반환합니다.

설명

DXGKCB_ALLOCATEADLDXGKCB_FREEADL 함수는 GPU에 프로그래밍(매핑)할 수 있는 메모리 주소를 설명하는 ADL을 만들고 삭제하는 데 사용됩니다. 기본 메모리는 IOMMU 사용 여부에 따라 논리적 또는 물리적 메모리를 가리킬 수 있으므로 드라이버는 이러한 주소가 실제 페이지를 나타낸다고 가정해서는 안 됩니다.

물리적 개체에서 ADL을 할당하면 Dxgkrnl 은 이 메모리가 잠겨 있고 ADL의 수명 동안 페이징할 수 없음을 보장합니다.

자세한 내용은 IOMMU DMA 다시 매핑 을 참조하세요.

DXGKCB_XXX 함수는 Dxgkrnl에 의해 구현됩니다. 이 콜백 함수를 사용하려면 DXGKARGCB_ALLOCATE_ADL 적절한 멤버를 설정한 다음, DXGKRNL_INTERFACE 통해 DxgkCbAllocateAdl을 호출합니다.

요구 사항

요구 사항
지원되는 최소 서버 Windows Server 2022(WDDM 2.9)
머리글 d3dkmddi.h
IRQL PASSIVE_LEVEL

추가 정보

DXGKARGCB_ALLOCATE_ADL

DXGKCB_FREEADL

DXGKRNL_INTERFACE