Aturan DrvAckIoStop (kmdf)

Aturan DrvAckIoStop memverifikasi bahwa driver mengetahui permintaan yang tertunda saat antrean yang dikelola dayanya mulai dimatikan dan driver mengakui, menyelesaikan, atau membatalkan permintaan yang tertunda yang sesuai. Dalam kasus permintaan I/O yang dikelola sendiri, driver juga harus menangani permintaan ini dengan benar dari fungsi EvtDeviceSelfManagedIoSuspend . Driver yang gagal menangani permintaan ini selama pemadaman akan menyebabkan 0x9F Pemeriksaan Bug: DRIVER_POWER_STATE_FAILURE.

Dalam beberapa keadaan, mungkin tepat untuk menekan peringatan ini. Jika driver tidak berpegang pada permintaan, atau tidak meneruskannya ke driver lain, dan jika driver menyelesaikan permintaan langsung di handler antrean, Anda dapat menggunakan fungsi __analysis_assume untuk menekan peringatan. Untuk informasi selengkapnya, lihat Menggunakan Fungsi _analysis_assume untuk Menekan Cacat Palsu dan Cara: Menentukan Informasi Kode Tambahan dengan Menggunakan __analysis_assume.

Model driver: KMDF

Pemeriksaan bug ditemukan dengan aturan ini: Pemeriksaan Bug 0x9F: DRIVER_POWER_STATE_FAILURE

Cara menguji

Pada waktu kompilasi

Jalankan Pemverifikasi Driver Statis dan tentukan aturan DrvAckIoStop .

Gunakan langkah-langkah berikut untuk menjalankan analisis kode Anda:
  1. Siapkan kode Anda (gunakan deklarasi jenis peran).
  2. Jalankan Pemverifikasi Driver Statis.
  3. Lihat dan analisis hasilnya.

Untuk informasi selengkapnya, lihat Menggunakan Pemverifikasi Driver Statis untuk Menemukan Cacat pada Driver.

Berlaku untuk

WdfDeviceInitSetPnpPowerEventCallbacksWdfFdoInitSetFilterWdfIoQueueCreate