IOMMU_MAP_RESERVED_LOGICAL_RANGE funzione di callback (wdm.h)

Esegue il mapping di un intervallo logico riservato.

A differenza di IOMMU_MAP_LOGICAL_RANGE_EX, è garantito che non esegua alcuna allocazione di memoria perché si presuppone che siano già state eseguite in precedenza con IOMMU_RESERVE_LOGICAL_ADDRESS_RANGE.

Sintassi

IOMMU_MAP_RESERVED_LOGICAL_RANGE IommuMapReservedLogicalRange;

NTSTATUS IommuMapReservedLogicalRange(
  [in, out] PIOMMU_DMA_LOGICAL_ADDRESS_TOKEN LogicalAddressToken,
  [in]      SIZE_T Offset,
  [in]      ULONG Permissions,
  [in]      PIOMMU_MAP_PHYSICAL_ADDRESS PhysicalAddressToMap,
  [out]     PIOMMU_DMA_LOGICAL_ADDRESS_TOKEN_MAPPED_SEGMENT MappedSegment
)
{...}

Parametri

[in, out] LogicalAddressToken

Oggetto IOMMU_DMA_LOGICAL_ADDRESS_TOKEN a cui eseguire il mapping.

[in] Offset

Offset, in byte, nel token di indirizzo logico che rappresenta l'indirizzo logico di base da eseguire il mapping.

[in] Permissions

Campo bit che rappresenta le autorizzazioni da impostare per l'intervallo mappato. Vedere Osservazioni per i bit di autorizzazione disponibili.

[in] PhysicalAddressToMap

Il IOMMU_MAP_PHYSICAL_ADDRESS che verrà mappato al dominio.

[out] MappedSegment

Restituisce l'IOMMU_DMA_LOGICAL_ADDRESS_TOKEN_MAPPED_SEGMENT che rappresenta un segmento del token di indirizzo logico ora mappato.

Valore restituito

STATUS_SUCCESS se l'operazione ha esito positivo. I valori restituiti degli errori possibili includono i codici di stato seguenti.

Codice restituito Descrizione
STATUS_INVALID_PARAMETER_2 L'offset specificato non è allineato alla pagina.
STATUS_INVALID_PARAMETER_4 L'indirizzo fisico specificato non è allineato a pagina e/o non è un numero intero di pagine di dimensioni.
STATUS_RESOURCE_IN_USE L'intervallo di indirizzi logici rappresentato nel token di indirizzo logico è già completamente o parzialmente mappato.
STATUS_UNSUCCESSFUL Il token di indirizzo logico è attualmente in corso di eliminazione.

Per altre informazioni, vedere Valori NTSTATUS.

Commenti

È possibile annullare il mapping di un segmento di token di indirizzo logico tramite IOMMU_UNMAP_RESERVED_LOGICAL_RANGE.

Il campo autorizzazioni è un campo bit che descrive le autorizzazioni di accesso per le pagine da mappare.

I bit sono definiti come segue:

Bit 0 = Read Access

Bit 1 = Write Access

Bits 31-2 = Reserved (0)

Requisiti

Requisito Valore
Server minimo supportato Windows Server 2022
Intestazione wdm.h (include Wdm.h)

Vedi anche

IOMMU_UNMAP_RESERVED_LOGICAL_RANGE

IOMMU_MAP_PHYSICAL_ADDRESS

IOMMU_DMA_LOGICAL_ADDRESS_TOKEN

IOMMU_DMA_LOGICAL_ADDRESS_TOKEN_MAPPED_SEGMENT