IOMMU_MAP_IDENTITY_RANGE_EX função de retorno de chamada (wdm.h)
Cria um mapeamento de identidade para um espaço de endereço físico fornecido no domínio fornecido.
Sintaxe
IOMMU_MAP_IDENTITY_RANGE_EX IommuMapIdentityRangeEx;
NTSTATUS IommuMapIdentityRangeEx(
[in] PIOMMU_DMA_DOMAIN Domain,
[in] ULONG Permissions,
[in] PIOMMU_MAP_PHYSICAL_ADDRESS PhysicalAddressToMap
)
{...}
Parâmetros
[in] Domain
Um ponteiro para o IOMMU_DMA_DOMAIN ao qual o endereço físico mapeado de identidade pertencerá. O domínio deve ser do tipo DomainTypeTranslate ou DomainTypePassThrough. Para obter mais informações sobre tipos de domínio, consulte IOMMU_DMA_DOMAIN_TYPE.
[in] Permissions
Um campo de bits que representa as permissões a serem definidas para o intervalo que está sendo mapeado. Consulte Comentários para ver os bits de permissão disponíveis.
[in] PhysicalAddressToMap
O IOMMU_MAP_PHYSICAL_ADDRESS que será mapeado para o domínio.
Retornar valor
STATUS_SUCCESS se a operação for bem-sucedida. Os possíveis valores retornados por erro incluem os seguintes códigos de status.
Código de retorno | Descrição |
---|---|
STATUS_INVALID_PARAMETER_1 | O domínio fornecido não é do tipo DomainTypeTranslate ou DomainTypePassThrough. |
STATUS_INVALID_PARAMETER_3 | O IOMMU_MAP_PHYSICAL_ADDRESS fornecido não representa a memória física alinhada à página e tem um tamanho que é um múltiplo de PAGE_SIZE. |
STATUS_IN_USE | O intervalo de identidade já está mapeado ou parcialmente mapeado. |
STATUS_NOT_SUPPORTED | O domínio fornecido contém um alocador lógico que não permite alocação explícita de endereço lógico. |
Comentários
Para desmapear o endereço lógico criado por IOMMU_MAP_IDENTITY_RANGE_EX, use IOMMU_UNMAP_IDENTITY_RANGE_EX.
O campo de permissões é um campo de bits que descreve as permissões de acesso para as páginas a serem mapeadas.
Os bits são definidos da seguinte maneira:
Bit 0 = Read Access
Bit 1 = Write Access
Bits 31-2 = Reserved (0)
Requisitos
Requisito | Valor |
---|---|
Servidor mínimo com suporte | Windows Server 2022 |
Cabeçalho | wdm.h (include Wdm.h) |