Aturan MdlAfterReqCompletedIntIoctlA (kmdf)
Aturan MdlAfterReqCompletedIntIoctlA menentukan bahwa dalam fungsi panggilan balik EvtIoInternalDeviceControl , daftar deskriptor memori (MDL) tidak dapat diakses setelah permintaan I/O selesai.
Dalam fungsi panggilan balik EvtIoInternalDeviceControl driver, MDL yang diambil dengan memanggil metode WdfRequestRetrieveInputWdmMdl atau WdfRequestRetrieveOutputWdmMdl tidak dapat diakses setelah memanggil WdfRequestComplete, WdfRequestCompleteWithInformation, atau WdfRequestCompleteWithPriorityBoost pada permintaan I/O.
Aturan ini mempertimbangkan fungsi akses MDL berikut:
WDF_MEMORY_DESCRIPTOR_INIT_MDLMmGetMdlByteCountMmGetSystemAddressForMdlSafeMmGetMdlVirtualAddressIoBuildPartialMdl (pertama dan kedua parameter) KeFlushIoBuffersMmGetMdlPfnArrayMmGetMdlByteOffsetMmPrepareMdlForReuseWdfDmaTransactionInitialize
Model driver: KMDF
Cara menguji
Pada waktu kompilasi |
---|
Jalankan Verifier Driver Statis dan tentukan aturan MdlAfterReqCompletedIntIoctlA . Gunakan langkah-langkah berikut untuk menjalankan analisis kode Anda:
Untuk informasi selengkapnya, lihat Menggunakan Pemverifikasi Driver Statis untuk Menemukan Cacat pada Driver. |
Berlaku untuk
WDF_MEMORY_DESCRIPTOR_INIT_MDLWdfDmaTransactionInitializeWdfRequestCompleteWdfRequestCompleteWithInformationWdfRequestCompleteWithPriorityBoostWdfRequestRetrieveInputWdmMdlWdfRequestRetrieveOutputWdmMdlIoBuildPartialMdlKeFlushIoBuffersMmGetMdlByteCountMmGetMdlByteOffsetMmGetMdlPfnArrayMmGetMdlVirtualAddressMmGetSystemAddressForMdlSafeMmPrepareMdlForReuse
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