IOMMU_RESERVE_LOGICAL_ADDRESS_RANGE fungsi panggilan balik (wdm.h)
Melakukan pra-alokasi ruang alamat logis yang dapat digunakan untuk pemetaan di masa mendatang. Ini memberi driver kemampuan untuk memastikan kemajuan penerusan untuk panggilan peta/batalkan peta di masa mendatang.
Sintaks
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
)
{...}
Parameter
[in] Domain
Penunjuk ke IOMMU_DMA_DOMAIN tempat alamat logis yang dipesan akan dimiliki. Domain harus berjenis DomainTypeTranslate. Untuk informasi selengkapnya tentang jenis domain, lihat IOMMU_DMA_DOMAIN_TYPE.
[in] Size
Ukuran, dalam byte, dari rentang alamat logis untuk dicadangkan. Nilai ini harus mewakili seluruh jumlah halaman.
[in, optional] ExplicitLogicalAddress
Alamat logis domain yang harus dicadangkan. Jika domain tidak dibuat dengan alokator logis terdaftar, maka bidang ini diperlukan. Jika domain dibuat dengan alokator logis terdaftar yang tidak mendukung alokasi alamat logis eksplisit, maka bidang ini harus NULL.
[in, optional] MinLogicalAddress
Alamat logika minimum (inklusif) yang diperbolehkan yang dapat dipesan. Jika domain tidak dibuat dengan alokator logis terdaftar, maka bidang ini akan diabaikan.
[in, optional] MaxLogicalAddress
Alamat logika maksimum (inklusif) yang diizinkan yang dapat dicadangkan. Jika domain tidak dibuat dengan alokator logis terdaftar, maka bidang ini akan diabaikan.
[out] LogicalAddressToken
Mengembalikan IOMMU_DMA_LOGICAL_ADDRESS_TOKEN yang mewakili rentang alamat logika yang dipesan.
Nilai kembali
STATUS_SUCCESS jika operasi berhasil. Kemungkinan nilai pengembalian kesalahan mencakup kode status berikut.
Menampilkan kode | Deskripsi |
---|---|
STATUS_INVALID_PARAMETER_1 | Domain yang disediakan bukan berjenis DomainTypeTranslate. |
STATUS_INVALID_PARAMETER_2 | Ukuran yang disediakan bukan kelipatan PAGE_SIZE. |
STATUS_INVALID_PARAMETER_3 | ExplicitLogicalAddress yang disediakan tidak selaras dengan halaman. |
STATUS_INVALID_PARAMETER_MIX | Alamat logis min dan maks yang disediakan tidak dapat dipenuhi. |
STATUS_IN_USE | ExplicitLogicalAddress sudah dipetakan atau dipetakan sebagian. |
STATUS_NOT_SUPPORTED | ExplicitLogicalAddress disediakan untuk domain dengan alokator logis yang tidak mengizinkan alokasi alamat logis eksplisit. Atau ExplicitLogicalAddress tidak disediakan untuk domain tanpa alokator logis. |
Untuk informasi selengkapnya, lihat Nilai NTSTATUS.
Keterangan
Token Alamat Logis dapat dibebaskan melalui IOMMU_FREE_RESERVED_LOGICAL_ADDRESS_RANGE.
Token Alamat Logis harus memiliki bagian dari rentang alamat logisnya yang dipetakan ke dan tidak dipetakan dari alamat fisik melalui IOMMU_MAP_RESERVED_LOGICAL_RANGE dan IOMMU_UNMAP_RESERVED_LOGICAL_RANGE.
Persyaratan
Persyaratan | Nilai |
---|---|
Server minimum yang didukung | Windows Server 2022 |
Header | wdm.h (termasuk Wdm.h) |
Lihat juga
IOMMU_DMA_LOGICAL_ADDRESS_TOKEN
IOMMU_FREE_RESERVED_LOGICAL_ADDRESS_RANGE
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk