Set di regole IRQL (Storport)
Usare queste regole per verificare che il driver effettua chiamate DDI all'irQL richiesto.
Un driver che non segue le regole IRQL può causare gravi problemi durante l'operazione che possono causare condizioni di deadlock o arresti anomali del computer.
Contenuto della sezione
Argomento | Descrizione |
---|---|
Questa regola verifica che le routine seguenti vengano chiamate solo in IRQL = DISPATCH_LEVEL. |
|
Questa regola verifica che KeReleaseSpinLock sia chiamato solo in IRQL = DISPATCH_LEVEL . Deve anche impostare irQL sul livello IRQL precedente. In genere questa chiamata sarà preceduta da una chiamata a KeAcquireSpinLock. |
|
Questa regola verifica che le routine di callback StorPort vengano restituite allo stesso livello IRQL del livello a cui vengono chiamate. |
|
Questa regola verifica che le routine TdiRegisterPnPHandlers e TdiDeregisterPnPHandlers siano chiamate solo a IRQL inferiori a DISPATCH_LEVEL. Tuttavia, se viene chiamato ExFreeToNPagedLookasideList , la regola passa. |
|
La regola StorPortIrql verifica che le routine StorPort vengano chiamate a livelli IRQL corretti. |
Per selezionare il set di regole Irql
Selezionare il progetto driver (con estensione vcxProj) in Microsoft Visual Studio. Dal menu Driver fare clic su Avvia verifica driver statico....
Fare clic sulla scheda Regole . In Set di regole selezionare Irql.
Per selezionare il set di regole predefinito da una finestra del prompt dei comandi per sviluppatori di Visual Studio, specificare Irql.sdv con l'opzione /check . Ad esempio:
msbuild /t:sdv /p:Inputs="/check:Irql.sdv" mydriver.VcxProj /p:Configuration="Win8 Release" /p:Platform=Win32
Per altre informazioni, vedere Uso del verificatore driver statico per trovare i difetti nei comandi driver e verifica driver statici (MSBuild).