IOMMU_UNMAP_IDENTITY_RANGE_EX callback function (wdm.h)

Deletes an identity mapping created by IOMMU_MAP_IDENTITY_RANGE_EX.

Syntax

IOMMU_UNMAP_IDENTITY_RANGE_EX IommuUnmapIdentityRangeEx;

NTSTATUS IommuUnmapIdentityRangeEx(
  [in] PIOMMU_DMA_DOMAIN Domain,
  [in] PIOMMU_MAP_PHYSICAL_ADDRESS MappedPhysicalAddress
)
{...}

Parameters

[in] Domain

A pointer to the IOMMU_DMA_DOMAIN that the identity mapped physical address belongs to. The domain must be of type DomainTypeTranslate or DomainTypePassThrough. For more information about domain types, see IOMMU_DMA_DOMAIN_TYPE.

[in] MappedPhysicalAddress

The IOMMU_MAP_PHYSICAL_ADDRESS representing the identity mapped address to delete.

Return value

STATUS_SUCCESS if the operation is successful. Possible error return values include the following status codes.

Return Description
STATUS_INVALID_PARAMETER_1 The domain provided is not of type DomainTypeTranslate or DomainTypePassThrough
STATUS_INVALID_PARAMETER_2 The IOMMU_MAP_PHYSICAL_ADDRESS provided does not represent physical memory that is page-aligned and has a size that is a multiple of PAGE_SIZE.
STATUS_NOT_SUPPORTED The provided domain contains a logical allocator that does not allow explicit logical address allocation.

Requirements

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

See also

IOMMU_MAP_IDENTITY_RANGE_EX

IOMMU_DMA_DOMAIN_TYPE

DMA_IOMMU_INTERFACE_V2

DMA_IOMMU_INTERFACE_EX

IOMMU_MAP_PHYSICAL_ADDRESS