다음을 통해 공유


DXGKCB_DISCONNECTDOORBELL 콜백 함수(d3dkmddi.h)

중요하다

일부 정보는 상용 출시되기 전에 실질적으로 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보와 관련하여 명시적이거나 묵시적인 보증을 하지 않습니다.

KMD는 DxgkCbDisconnectDoorbell 호출하여 Dxgkrnl KMD가 하드웨어 큐에서 이전에 연결된 초인종의 연결을 끊어야 한다고 알립니다.

통사론

DXGKCB_DISCONNECTDOORBELL DxgkcbDisconnectdoorbell;

NTSTATUS DxgkcbDisconnectdoorbell(
  INOUT_PDXGKARGCB_DISCONNECTDOORBELL pArgs
)
{...}

매개 변수

pArgs

[in] 연결을 끊을 초인종을 설명하는 DXGKARGCB_DISCONNECTDOORBELL 구조체에 대한 포인터입니다.

반환 값

DxgkCbDisconnectDoorbellDxgkrnlhHwQueue연결된 hDoorbell 찾을 수 없거나 DisconnectReasonD3DDDI_DOORBELLSTATUS_DISCONNECTED_XXX 값 중 하나가 아닌 경우 STATUS_INVALID_PARAMETER 반환합니다. 다른 모든 경우에서 초인종 연결이 이미 끊어진 경우에도 이 함수는 성공합니다.

발언

KMD는 초인종 연결을 끊어야 할 때 Dxgkrnl 알리기 위해 이 함수를 호출합니다. KMD는 이 콜백에서 돌아온 후에만 실제 초인종 주소의 연결을 끊어야 합니다.

Dxgkrnl 가상 주소의 매핑을 해제하고 초인종을 연결이 끊긴 것으로 표시합니다. 특히 Dxgkrnl 다음 단계를 수행하여 초인종 연결을 끊습니다.

  • UMD가 더 이상 실제 초인종 위치에 쓸 수 없도록 사용자 모드 DoorbellCpuVirtualAddress 더미 페이지로 회전합니다.
  • DisconnectReasonDoorbellStatusCpuVirtualAddress 작성하여 UMD가 초인종 연결이 끊어지고 그 이유를 알 수 있도록 합니다.

자세한 내용은 사용자 모드 작업 제출참조하세요.

요구 사항

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

참고 항목

DXGKARGCB_DISCONNECTDOORBELL

DxgkDdiConnectDoorbell