SpinLockSafe-Regel (wdm)
Die SpinLockSafe-Regel gibt an, dass IoStartNextPacket und IoCompleteRequest nicht aufgerufen werden, während eine Drehsperre gedrückt wird.
Diese Regel gibt auch an, dass der Treiber Vor dem Aufrufen von KeReleaseSpinLockFromDpcLevelkeAcquireSpinLockoder KeAcquireSpinLockatDpcLevel aufruft und ioAcquireCancelSpinLock aufruft, bevor IoReleaseCancelSpinLock aufgerufen wird.
Static Driver Verifier kann falsche Verstöße gegen diese Regel melden, wenn der Treiber geschachtelte SpinLocks enthält, auch wenn diese Spinlocks ordnungsgemäß erworben und freigegeben werden.
Treibermodell: WDM
So führen Sie einen Test durch
Beim Kompilieren: |
---|
Führen Sie static Driver Verifier aus , und geben Sie die SpinLockSafe-Regel an. Gehen Sie folgendermaßen vor, um Ihren Code zu analysieren:
Weitere Informationen finden Sie unter Verwenden der statischen Treiberüberprüfung, um Fehler in Treibern zu finden. |
Gilt für:
IoAcquireCancelSpinLockIoCompleteRequestIoReleaseCancelSpinLockIoStartNextPacketKeAcquireSpinLockKeAcquireSpinLockRaiseToDpcKeReleaseSpinLock