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
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour