共用方式為


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。

可能的錯誤傳回值包括下列狀態代碼。

傳回碼 Description
STATUS_UNSUCCESSFUL 例程無法註冊提供的回呼,因為 IOMMU_DMA_DEVICE 已經向回呼註冊。
STATUS_INVALID_PARAMETER_4 呼叫端並未指出對 中 StateFields任何介面狀態欄位感興趣。

如需詳細資訊,請參閱 NTSTATUS值

備註

註冊一律會立即叫用回呼,以避免任何叫用回呼的通知發生競爭狀況。 回呼擁有者不應該假設叫用回呼時的狀態,而且應該一律檢查狀態是否符合其需求。

處置 DMA_IOMMU_INTERFACE_EXIOMMU_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