Compartilhar via


Regra IrqlKeWaitForMultipleObjects (wdm)

A regra IrqlKeWaitForMultipleObjects especifica que os chamadores da rotina KeWaitForMultipleObjects devem estar em execução no IRQL adequado com base no parâmetro Timeout .

Os chamadores da rotina IrqlKeWaitForMultipleObjects podem estar em execução em IRQL <= DISPATCH_LEVEL, exceto nas seguintes situações:

  • Se Tempo limite<> 0, o chamador da rotina KeWaitForMultipleObjects deverá estar em execução em IRQL <= APC_LEVEL.

  • Se Timeout != NULL e *Timeout = 0, o chamador da rotina KeWaitForMultipleObjects deverá estar em execução em IRQL = DISPATCH_LEVEL.

  • Se Timeout = NULL ou *Timeout != 0, o chamador da rotina KeWaitForMultipleObjects deverá ser executado em IRQL <= APC_LEVEL.

Modelo de driver: WDM

Como testar

Em tempo de compilação

Execute o Verificador de Driver Estático e especifique a regra IrqlKeWaitForMultipleObjects .

Use as seguintes etapas para executar uma análise do código:
  1. Prepare seu código (use declarações de tipo de função).
  2. Execute o Verificador de Driver Estático.
  3. Exiba e analise os resultados.

Para obter mais informações, consulte Usando o verificador de driver estático para localizar defeitos em drivers.

Aplica-se a

KeWaitForMultipleObjects