DXGKDDI_BEGINEXCLUSIVEACCESS fungsi panggilan balik (d3dkmddi.h)
Dxgkrnl memanggil DxgkDdiBeginExclusiveAccess untuk memberi tahu driver mode kernel bahwa sakelar domain IOMMU akan terjadi.
Sintaks
DXGKDDI_BEGINEXCLUSIVEACCESS DxgkddiBeginexclusiveaccess;
NTSTATUS DxgkddiBeginexclusiveaccess(
IN_CONST_HANDLE hAdapter,
IN_PDXGKARG_BEGINEXCLUSIVEACCESS pBeginExclusiveAccess
)
{...}
Parameter
hAdapter
[in] Handel ke blok konteks yang terkait dengan adaptor tampilan.
pBeginExclusiveAccess
[in] Penunjuk ke struktur DXGKARG_BEGINEXCLUSIVEACCESS yang berisi argumen input untuk DxgkDdiBeginExclusiveAccess.
Menampilkan nilai
DxgkDdiBeginExclusiveAccess harus mengembalikan STATUS_SUCCESS jika operasi berhasil. Jika tidak, itu harus mengembalikan kode kesalahan NTSTATUS yang sesuai.
Keterangan
Lampiran dan pencopotan domain IOMMU sangat cepat, tetapi tetap tidak atomik saat ini. Ini berarti bahwa transaksi yang dikeluarkan melalui PCIe tidak dijamin akan diterjemahkan dengan benar saat bertukar ke domain dengan pemetaan yang berbeda.
Untuk menangani situasi ini, Dxgkrnl memanggil pasangan KMD DDI berikut:
- DxgkDdiBeginExclusiveAccess untuk memberi tahu KMD bahwa sakelar domain IOMMU akan terjadi.
- DxgkDdiEndExclusiveAccess setelah sakelar domain IOMMU selesai.
Driver harus memastikan bahwa perangkat kerasnya diam setiap kali perangkat dialihkan ke domain IOMMU baru. Artinya, driver harus memastikan bahwa driver tidak membaca atau menulis ke memori sistem dari perangkat di antara kedua panggilan ini.
Di antara kedua panggilan ini, Dxgkrnl menjamin hal berikut:
- Penjadwal akan ditangguhkan. Semua beban kerja aktif akan dibersihkan, dan tidak ada beban kerja baru yang akan dikirim atau dijadwalkan pada perangkat keras.
- Tidak ada panggilan DDI lain yang akan dilakukan.
Sebagai bagian dari panggilan ini, driver dapat memilih untuk menonaktifkan dan menekan gangguan (termasuk interupsi vsync) selama akses eksklusif, bahkan tanpa pemberitahuan eksplisit dari OS.
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 10, versi 1803 (WDDM 2.4) |
Header | d3dkmddi.h |
IRQL | PASSIVE_LEVEL |
Lihat juga
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