IOMMU_RESERVE_LOGICAL_ADDRESS_RANGE 콜백 함수(wdm.h)

이후 매핑에 사용할 수 있는 논리 주소 공간을 미리 할당합니다. 이렇게 하면 드라이버가 향후 맵/매핑 해제 호출에 대한 진행률을 보장할 수 있습니다.

구문

IOMMU_RESERVE_LOGICAL_ADDRESS_RANGE IommuReserveLogicalAddressRange;

NTSTATUS IommuReserveLogicalAddressRange(
  [in]           PIOMMU_DMA_DOMAIN Domain,
  [in]           SIZE_T Size,
  [in, optional] PIOMMU_DMA_LOGICAL_ADDRESS ExplicitLogicalAddress,
  [in, optional] PIOMMU_DMA_LOGICAL_ADDRESS MinLogicalAddress,
  [in, optional] PIOMMU_DMA_LOGICAL_ADDRESS MaxLogicalAddress,
  [out]          PIOMMU_DMA_LOGICAL_ADDRESS_TOKEN *LogicalAddressToken
)
{...}

매개 변수

[in] Domain

예약된 논리 주소가 속할 IOMMU_DMA_DOMAIN 대한 포인터입니다. 도메인은 DomainTypeTranslate 형식이어야 합니다. 도메인 유형에 대한 자세한 내용은 IOMMU_DMA_DOMAIN_TYPE 참조하세요.

[in] Size

예약할 논리 주소 범위의 크기(바이트)입니다. 이 값은 정수 페이지를 나타내야 합니다.

[in, optional] ExplicitLogicalAddress

예약해야 하는 도메인 논리 주소입니다. 등록된 논리 할당자를 사용하여 도메인을 만들지 않은 경우 이 필드가 필요합니다. 명시적 논리 주소 할당을 지원하지 않는 등록된 논리 할당자를 사용하여 도메인을 만든 경우 이 필드는 NULL이어야 합니다.

[in, optional] MinLogicalAddress

예약할 수 있는 최소(포함) 허용 논리 주소입니다. 등록된 논리 할당자를 사용하여 도메인을 만들지 않은 경우 이 필드는 무시됩니다.

[in, optional] MaxLogicalAddress

예약할 수 있는 최대(포함) 허용 논리 주소입니다. 등록된 논리 할당자를 사용하여 도메인을 만들지 않은 경우 이 필드는 무시됩니다.

[out] LogicalAddressToken

예약된 논리 주소 범위를 나타내는 IOMMU_DMA_LOGICAL_ADDRESS_TOKEN 반환합니다.

반환 값

작업이 성공하면 STATUS_SUCCESS. 가능한 오류 반환 값에는 다음 상태 코드가 포함됩니다.

반환 코드 설명
STATUS_INVALID_PARAMETER_1 제공된 도메인이 DomainTypeTranslate 형식이 아닙니다.
STATUS_INVALID_PARAMETER_2 제공된 크기는 PAGE_SIZE 배수가 아닙니다.
STATUS_INVALID_PARAMETER_3 제공된 ExplicitLogicalAddress가 페이지 정렬되지 않았습니다.
STATUS_INVALID_PARAMETER_MIX 제공된 최소 및 최대 논리 주소를 충족할 수 없습니다.
STATUS_IN_USE ExplicitLogicalAddress는 이미 매핑되거나 부분적으로 매핑되어 있습니다.
STATUS_NOT_SUPPORTED 명시적 논리 주소 할당을 허용하지 않는 논리 할당자가 있는 도메인에 대해 ExplicitLogicalAddress가 제공되었습니다. 또는 논리 할당자가 없는 도메인에 대해 ExplicitLogicalAddress가 제공되지 않았습니다.

자세한 내용은 NTSTATUS 값을 참조하세요.

설명

논리 주소 토큰은 IOMMU_FREE_RESERVED_LOGICAL_ADDRESS_RANGE 통해 해제할 수 있습니다.

논리 주소 토큰에는 IOMMU_MAP_RESERVED_LOGICAL_RANGE 및 IOMMU_UNMAP_RESERVED_LOGICAL_RANGE 통해 물리적 주소에 매핑되고 매핑되지 않은 논리적 주소 범위의 일부가 있어야 합니다.

요구 사항

요구 사항
지원되는 최소 서버 Windows Server 2022
머리글 wdm.h(Wdm.h 포함)

추가 정보

IOMMU_DMA_LOGICAL_ADDRESS_TOKEN

IOMMU_FREE_RESERVED_LOGICAL_ADDRESS_RANGE

IOMMU_MAP_RESERVED_LOGICAL_RANGE

IOMMU_UNMAP_RESERVED_LOGICAL_RANGE