Freigeben über


ReqSendWhileSpinlock-Regel (kmdf)

Die ReqSendWhileSpinlock-Regel gibt an, dass keine Anforderungen gesendet werden, während der Treiber ein Spinlock besitzt.

Wenn der Treiber Anforderungen sendet, während er ein Spinlock enthält, kann dies zu einem Deadlock führen oder mit dem unteren Treiber, der die Anforderungen empfängt, kollidieren, wenn der untere Treiber auch versucht, eine Sperre abzurufen oder auf freigegebene Ressourcen zuzugreifen.

Treibermodell: KMDF

So führen Sie einen Test durch

Beim Kompilieren:

Führen Sie Static Driver Verifier aus, und geben Sie die Regel ReqSendWhileSpinlock an.

Gehen Sie folgendermaßen vor, um Ihren Code zu analysieren:
  1. Bereiten Sie den Code vor (verwenden Sie Rollentypdeklarationen).
  2. Führen Sie Static Driver Verifier aus.
  3. Überprüfen und analysieren Sie die Ergebnisse.

Weitere Informationen finden Sie unter Verwenden der statischen Treiberüberprüfung, um Fehler in Treibern zu finden.

Gilt für:

WdfRequestSendWdfSpinLockAcquireWdfSpinLockReleaseKeAcquireSpinLockKeReleaseSpinLock

Weitere Informationen

Abschließen von E/A-Anforderungenzum Synchronisieren von Abbruch- und Vervollständigungscode