IOMMU_INTERFACE_STATE_CHANGE_CALLBACK callback function (wdm.h)

This routine is invoked whenever there has been a system state change that affects a DMA_IOMMU_INTERFACE_EX.

Syntax

IOMMU_INTERFACE_STATE_CHANGE_CALLBACK IommuInterfaceStateChangeCallback;

void IommuInterfaceStateChangeCallback(
  PIOMMU_INTERFACE_STATE_CHANGE StateChange,
  PVOID Context
)
{...}

Parameters

StateChange

[In] A pointer to the state information that indicates which states have changed. See IOMMU_INTERFACE_STATE_CHANGE.

Context

[In, optional] An optional caller-specified context that matches the optional context passed in when registering an IOMMU Interface state change callback through IOMMU_REGISTER_INTERFACE_STATE_CHANGE_CALLBACK.

Return value

None

Remarks

This callback should be registered via IOMMU_REGISTER_INTERFACE_STATE_CHANGE_CALLBACK. It will be immediately invoked upon registration (to avoid race conditions) and whenever a system state change has occurred. The callback owner should not assume the state and should always check the provided state information in IOMMU_INTERFACE_STATE_CHANGE.

It is the callback owner's responsibility to unregister the callback, using IOMMU_UNREGISTER_INTERFACE_STATE_CHANGE_CALLBACK, before disposing of an DMA_IOMMU_INTERFACE_EX or IOMMU_DMA_DEVICE.

Requirements

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

See also

IOMMU_INTERFACE_STATE_CHANGE

IOMMU_INTERFACE_STATE_CHANGE_FIELDS

IOMMU_REGISTER_INTERFACE_STATE_CHANGE_CALLBACK

IOMMU_UNREGISTER_INTERFACE_STATE_CHANGE_CALLBACK

DMA_IOMMU_INTERFACE_V2

DMA_IOMMU_INTERFACE_EX