IOMMU_REGISTER_INTERFACE_STATE_CHANGE_CALLBACK 콜백 함수(wdm.h)

DMA_IOMMU_INTERFACE_EX 관련된 상태 변경이 발생할 때마다 호출자가 호출할 콜백을 등록할 수 있습니다.

구문

IOMMU_REGISTER_INTERFACE_STATE_CHANGE_CALLBACK IommuRegisterInterfaceStateChangeCallback;

NTSTATUS IommuRegisterInterfaceStateChangeCallback(
  PIOMMU_INTERFACE_STATE_CHANGE_CALLBACK StateChangeCallback,
  PVOID Context,
  PIOMMU_DMA_DEVICE DmaDevice,
  PIOMMU_INTERFACE_STATE_CHANGE_FIELDS StateFields
)
{...}

매개 변수

StateChangeCallback

[In] 등록할 IOMMU_INTERFACE_STATE_CHANGE_CALLBACK .

Context

[In, optional] 상태 변경 콜백에 전달될 선택적 컨텍스트입니다.

DmaDevice

[In] 콜백에 연결될 IOMMU_DMA_DEVICE 나타내는 불투명 토큰에 대한 포인터입니다.

StateFields

[In] 호출자가 알림을 받도록 등록하는 상태에 대한 포인터입니다. IOMMU_INTERFACE_STATE_CHANGE_FIELDS 참조하세요.

반환 값

작업이 성공하면 STATUS_SUCCESS.

가능한 오류 반환 값에는 다음 상태 코드가 포함됩니다.

반환 코드 설명
STATUS_UNSUCCESSFUL IOMMU_DMA_DEVICE 이미 콜백에 등록되어 있으므로 루틴에서 제공된 콜백을 등록하지 못했습니다.
STATUS_INVALID_PARAMETER_4 호출자가 의 인터페이스 상태 필드에 StateFields대한 관심을 나타내지 않았습니다.

자세한 내용은 NTSTATUS 값을 참조하세요.

설명

등록은 콜백을 호출하는 알림이 있는 경합 조건을 방지하기 위해 항상 즉시 콜백을 호출합니다. 콜백 소유자는 콜백이 호출될 때 상태를 가정해서는 안 되며 항상 상태가 요구 사항과 일치하는지 검사 합니다.

DMA_IOMMU_INTERFACE_EX 또는 IOMMU_DMA_DEVICE 삭제하기 전에 소유자는 등록된 모든 콜백의 등록을 취소할 책임이 있습니다.

IOMMU_DMA_DEVICE당 하나의 콜백만 등록할 수 있습니다.

요구 사항

요구 사항
지원되는 최소 서버 Windows Server 2022
머리글 wdm.h(Wdm.h 포함)

추가 정보

DMA_IOMMU_INTERFACE_V2

DMA_IOMMU_INTERFACE_EX

IOMMU_INTERFACE_STATE_CHANGE_CALLBACK

IOMMU_INTERFACE_STATE_CHANGE_FIELDS

IOMMU_UNREGISTER_INTERFACE_STATE_CHANGE_CALLBACK