IOMMU_DOMAIN_ATTACH_DEVICE_EX callback function (wdm.h)
Attaches an IOMMU_DMA_DEVICE to an existing DMA device domain.
Syntax
IOMMU_DOMAIN_ATTACH_DEVICE_EX IommuDomainAttachDeviceEx;
NTSTATUS IommuDomainAttachDeviceEx(
PIOMMU_DMA_DOMAIN Domain,
PIOMMU_DMA_DEVICE DmaDevice
)
{...}
Parameters
Domain
[In] A handle to the domain that the IOMMU_DMA_DEVICE will attach to.
DmaDevice
[In] A pointer to the IOMMU_DMA_DEVICE to be attached.
Return value
STATUS_SUCCESS if the operation is successful. Possible error return values include the following status codes.
Return code | Description |
---|---|
|
The routine failed to allocate required resources. |
|
The device is already attached to a domain. |
|
The device is currently not allowed to attach to this domain type. |
For more information, see NTSTATUS Values.
Remarks
The caller is responsible for ensuring that the IOMMU_DMA_DEVICE is first detached, using IOMMU_DOMAIN_DETACH_DEVICE_EX, from any previously attached domain before attempting to attach it to another domain.
It is the driver's responsibility to ensure that this function is not called concurrently with any IOMMU_DOMAIN_DETACH_DEVICE_EX or IOMMU_SET_DEVICE_FAULT_REPORTING_EX calls on the same device.
If STATUS_ACCESS_DENIED
is returned, then it is likely the domain type is not currently available for the device to attach to. It is recommended to utilize IOMMU_DEVICE_QUERY_DOMAIN_TYPES to determine what domain types are available for the specified device. The types available can vary depending on the DMA Guard policy and the device characteristics. To be notified of when domain types are available, consider using IOMMU_REGISTER_INTERFACE_STATE_CHANGE_CALLBACK to register a notification callback whenever the available domain types change.
Requirements
Requirement | Value |
---|---|
Minimum supported server | Windows Server 2022 |
Header | wdm.h (include Wdm.h) |
See also
IOMMU_SET_DEVICE_FAULT_REPORTING_EX
IOMMU_DEVICE_QUERY_DOMAIN_TYPES