다음을 통해 공유


DXGKDDI_DESTROYMEMORYBASIS 콜백 함수(d3dkmddi.h)

KMD의 DxgkDdiDestroyMemoryBasis 함수는 DxgkDdiCreateMemoryBasis에 대한 이전 호출에서 만든 메모리 기반을 삭제합니다.

구문

DXGKDDI_DESTROYMEMORYBASIS DxgkddiDestroymemorybasis;

NTSTATUS DxgkddiDestroymemorybasis(
  IN_CONST_HANDLE hAdapter,
  IN_CONST_HANDLE hMemoryBasis
)
{...}

매개 변수

hAdapter

[in] 디스플레이 어댑터와 연결된 컨텍스트 블록에 대한 핸들입니다. KMD는 이전에 DxgiDdiAddDevice 함수의 MiniportDeviceContext 출력 매개 변수에서 Dxgkrnl에 이 핸들을 제공했습니다.

hMemoryBasis

삭제할 메모리 기준으로 처리합니다. 이 핸들은 이전에 DxgkDdiCreateMemoryBasis를 호출하여 만들었습니다.

반환 값

DxgkDdiDestroyMemoryBasis 는 메모리 기반이 성공적으로 제거된 경우 STATUS_SUCCESS 반환합니다. 그렇지 않으면 NTSTATUS 오류 코드를 반환합니다. 설명 부분을 참조하세요.

설명

Dxgkrnl 은 STATUS_SUCCESS 않은 반환된 NTSTATUS를 치명적인 오류 알림 반환으로 해석합니다. 제공된 핸들이 만들어지고 아직 제거되지 않은 핸들이라고 가정되므로 이 함수의 성공 외에는 아무것도 반환할 올바른 작동 경로가 없어야 합니다. KMD가 잘못된 입력을 감지하는 경우 반환된 오류 코드를 통해 Dxgkrnl 은 드라이버 크래시 대신 OS 커널에 고정 오류를 할당할 수 있습니다.

자세한 내용은 더티 비트 추적을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 11 버전 24H2(WDDM 3.2)
머리글 d3dkmddi.h
IRQL PASSIVE_LEVEL

추가 정보

DxgkDdiCreateMemoryBasis