Aturan StartIoCancel (wdm)

Aturan StartIoCancel menentukan bahwa driver tidak boleh memanggil IoSetStartIoAttributes dengan parameter NonCancelable yang diatur ke FALSE sebelum memanggil IoSetCancelRoutine dengan rutinitas batalnon-NULL.

Mengatur parameter NonCancelable ke FALSE sebelum mendaftarkan rutinitas Batal dapat mengakibatkan kondisi balapan pembatalan.

Karena rutinitas Batalkan driver harus menyertakan panggilan ke IoReleaseCancelSpinLock (untuk melepaskan kunci putar yang diperoleh Manajer I/O sebelum memanggil rutinitas Batal ), pertimbangkan untuk memverifikasi driver Anda dengan aturan StartIoCancel dan aturan CancelSpinLock .

Model driver: WDM

Cara menguji

Pada waktu kompilasi

Jalankan Pemverifikasi Driver Statis dan tentukan aturan StartIoCancel .

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

IoSetCancelRoutineIoSetStartIoAttributes

Lihat juga

CancelSpinLock