IOMMU_MAP_IDENTITY_RANGE_EX コールバック関数 (wdm.h)
指定されたドメイン内の指定された物理アドレス空間の ID マッピングを作成します。
構文
IOMMU_MAP_IDENTITY_RANGE_EX IommuMapIdentityRangeEx;
NTSTATUS IommuMapIdentityRangeEx(
[in] PIOMMU_DMA_DOMAIN Domain,
[in] ULONG Permissions,
[in] PIOMMU_MAP_PHYSICAL_ADDRESS PhysicalAddressToMap
)
{...}
パラメーター
[in] Domain
ID マップされた物理アドレスが属する IOMMU_DMA_DOMAIN へのポインター。 ドメインの種類は DomainTypeTranslate または DomainTypePassThrough である必要があります。 ドメインの種類の詳細については、「 IOMMU_DMA_DOMAIN_TYPE」を参照してください。
[in] Permissions
マップされる範囲に対して設定するアクセス許可を表すビット フィールド。 使用可能なアクセス許可ビットについては、「解説」を参照してください。
[in] PhysicalAddressToMap
ドメインにマップされる IOMMU_MAP_PHYSICAL_ADDRESS 。
戻り値
操作が成功した場合は、STATUS_SUCCESSします。 エラーの戻り値として考えられるのは、次の状態コードです。
リターン コード | 説明 |
---|---|
STATUS_INVALID_PARAMETER_1 | 指定されたドメインの種類が DomainTypeTranslate または DomainTypePassThrough ではありません。 |
STATUS_INVALID_PARAMETER_3 | 提供されるIOMMU_MAP_PHYSICAL_ADDRESSは、ページアラインされた物理メモリを表すのではなく、PAGE_SIZEの倍数であるサイズを持っています。 |
STATUS_IN_USE | ID 範囲は既にマップされているか、部分的にマップされています。 |
STATUS_NOT_SUPPORTED | 指定されたドメインには、明示的な論理アドレス割り当てを許可しない論理アロケーターが含まれています。 |
注釈
IOMMU_MAP_IDENTITY_RANGE_EXによって作成された論理アドレスのマップを解除するには、IOMMU_UNMAP_IDENTITY_RANGE_EXを使用します。
permissions フィールドは、マップするページのアクセス許可を記述するビットフィールドです。
ビットは次のように定義されます。
Bit 0 = Read Access
Bit 1 = Write Access
Bits 31-2 = Reserved (0)
要件
要件 | 値 |
---|---|
サポートされている最小のサーバー | Windows Server 2022 |
Header | wdm.h (Wdm.h を含む) |