Freigeben über


SpinLock-Regel (wdm)

Die SpinLock-Regel gibt an, dass der Treiber nach dem Aufruf von KeAcquireSpinLockKeReleaseSpinLock vor nachfolgenden Aufrufen von KeAcquireSpinLock oder keAcquireSpinLockRaiseToDpc aufruft.

Geschachtelte Aufrufe sind zulässig, wenn sie Sperren für verschiedene Ressourcen erwerben und freigeben. Geschachtelte Aufrufe zum Abrufen oder Freigeben von Sperren für dieselben Ressourcen verstoßen gegen diese Regel.

Diese Regel gibt auch an, dass der Treiber KeReleaseSpinLock verwendet hat, um alle Drehsperren freizugeben, bevor die Dispatchroutine oder die Abbruchroutine endet.

Treibermodell: WDM

Fehlerüberprüfung(en) mit dieser Regel gefunden: Fehlerprüfung 0xC4: DRIVER_VERIFIER_DETECTED_VIOLATION (0x00040009)

So führen Sie einen Test durch

Beim Kompilieren:

Führen Sie statische Treiberüberprüfung aus , und geben Sie die SpinLock-Regel 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.

Zur Laufzeit

Führen Sie die Treiberüberprüfung aus, und wählen Sie die DDI-Konformitätsüberprüfungsoption aus.

Gilt für:

KeAcquireSpinLockKeAcquireSpinLockRaiseToDpcKeReleaseSpinLockKeTryToAcquireSpinLockAtDpcLevel