Delen via


IRQL-regelset (Storport)

Gebruik deze regels om te controleren of uw stuurprogramma DDI-aanroepen uitvoert op de vereiste IRQL.

Een stuurprogramma dat niet voldoet aan de IRQL-regels kan ernstige problemen veroorzaken tijdens de bewerking die kan leiden tot impasseomstandigheden of computercrashes.

In deze sectie

Onderwerp Beschrijving

IrqlDispatch

Met deze regel wordt gecontroleerd of de volgende routines alleen worden aangeroepen bij IRQL = DISPATCH_LEVEL.

IrqlKeReleaseSpinLock

Met deze regel wordt gecontroleerd of KeReleaseSpinLock alleen wordt aangeroepen op IRQL = DISPATCH_LEVEL . Ook moet de IRQL worden ingesteld op het vorige IRQL-niveau. Deze aanroep wordt meestal voorafgegaan door een aanroep naar KeAcquireSpinLock.

SpChangeIrql

Met deze regel wordt gecontroleerd of de callbackroutines van StorPort op hetzelfde IRQL-niveau worden geretourneerd als het niveau waarop ze worden aangeroepen.

SpIrql

Met deze regel wordt gecontroleerd of de routines TdiRegisterPnPHandlers en TdiDeregisterPnPHandlers alleen worden aangeroepen op IRQL lager dan DISPATCH_LEVEL. Als ExFreeToNPagedLookasideList echter wordt aangeroepen, wordt de regel doorgegeven.

StorPortIrql

De StorPortIrql-regel controleert of StorPort-routines worden aangeroepen op de juiste IRQL-niveaus.

De Irql-regelset selecteren

  1. Selecteer uw stuurprogrammaproject (.vcxProj) in Microsoft Visual Studio. Klik in het Stuurprogramma menu op Statische stuurprogrammaverificatie starten….

  2. Klik op het tabblad Regels. Selecteer Irql onder Regelsets.

    Als u de standaardregelset wilt selecteren in een opdrachtpromptvenster voor Visual Studio-ontwikkelaars, geeft u Irql.sdv op met de optie /check . Voorbeeld:

    msbuild /t:sdv /p:Inputs="/check:Irql.sdv" mydriver.VcxProj /p:Configuration="Win8 Release" /p:Platform=Win32
    

    Voor meer informatie, zie Static Driver Verifier gebruiken om defecten te vinden in stuurprogramma's en Static Driver Verifier-opdrachten (MSBuild).