IOMMU_UNREGISTER_INTERFACE_STATE_CHANGE_CALLBACK callback function (wdm.h)

Allows the caller to deregister a registered IOMMU_INTERFACE_STATE_CHANGE_CALLBACK.

Syntax

IOMMU_UNREGISTER_INTERFACE_STATE_CHANGE_CALLBACK IommuUnregisterInterfaceStateChangeCallback;

NTSTATUS IommuUnregisterInterfaceStateChangeCallback(
  PIOMMU_INTERFACE_STATE_CHANGE_CALLBACK StateChangeCallback,
  PIOMMU_DMA_DEVICE DmaDevice
)
{...}

Parameters

StateChangeCallback

[In] The IOMMU_INTERFACE_STATE_CHANGE_CALLBACK to be unregistered.

DmaDevice

[In] A pointer to an opaque token representing the IOMMU_DMA_DEVICE associated with the provided callback.

Return value

STATUS_SUCCESS if the operation is successful.

Possible error return values include the following status codes.

Return code Description
STATUS_UNSUCCESSFUL The provided IOMMU_INTERFACE_STATE_CHANGE_CALLBACK is not a registered callback.

For more information, see NTSTATUS Values.

Remarks

Before disposing of a DMA_IOMMU_INTERFACE_EX or IOMMU_DMA_DEVICE, the owner is responsible for unregistering all its registered callbacks.

Only one callback can be registered per IOMMU_DMA_DEVICE.

Requirements

Requirement Value
Minimum supported server Windows Server 2022
Header wdm.h (include Wdm.h)

See also

IOMMU_INTERFACE_STATE_CHANGE_CALLBACK

IOMMU_REGISTER_INTERFACE_STATE_CHANGE_CALLBACK

DMA_IOMMU_INTERFACE_V2

DMA_IOMMU_INTERFACE_EX