Règle SpinLockSafe (wdm)
La règle SpinLockSafe spécifie que IoStartNextPacket et IoCompleteRequest ne sont pas appelés en tenant un verrou de rotation.
Cette règle spécifie également que le pilote appelle KeAcquireSpinLock ou KeAcquireSpinLockAtDpcLevel avant d’appeler KeReleaseSpinLockFromDpcLevel ou KeReleaseSpinLock, et qu’il appelle IoAcquireCancelSpinLock avant d’appeler IoReleaseCancelSpinLock.
Static Driver Verifier peut signaler de fausses violations de cette règle si le pilote inclut des verrouillages de spin imbriqués, même si ces verrous de rotation sont acquis et libérés correctement.
Modèle de pilote : WDM
Comment tester
Au moment de la compilation |
---|
Exécutez Static Driver Verifier et spécifiez la règle SpinLockSafe . Utilisez les étapes suivantes pour exécuter l’analyse de votre code :
Pour plus d’informations, consultez Utilisation du vérificateur de pilote statique pour rechercher des défauts dans les pilotes. |
S’applique à
IoAcquireCancelSpinLockIoCompleteRequestIoReleaseCancelSpinLockIoStartNextPacketKeAcquireSpinLockKeAcquireSpinLockRaiseToDpcKeReleaseSpinLock