Regra KsIrqlPinCallbacks ()

A regra KsIrqlPinCallbacks especifica que um driver de miniporto de fluxo de kernel (KS) retorna de uma função de retorno de chamada KS Pin com o mesmo IRQL que tinha quando foi chamado.

Dicas para depuração

Quando o Verificador de Driver detecta uma violação dessa regra, ele dispara 0xC4 de Verificação de Bugs: DRIVER_VERIFIER_DETECTED_VIOLATION, com um valor arg1 de 0x00081008. O arg3 (RuleState) e o arg4 (SubState) do bug marcar fornecem ponteiros para informações adicionais sobre a violação de regra.

Use a extensão do depurador !ruleinfo para descobrir quais eram os valores irql na entrada e saída da função.

Use o seguinte comando:

!ruleinfo 0x81008RuleStateSubState.

Nos dados de estado da regra, o OldIrql é o IRQL quando o retorno de chamada é inserido. O NewIrql é o IRQL quando a função de retorno de chamada é encerrada.

Não use !irql para determinar o IRQL atual porque o Verificador de Driver pode ter gerado IRQL antes do bug marcar. Em vez disso, use !verifier 0x008 para exibir os logs do IRQL.

Modelo de driver: KS

Marcar de bugs encontradas com esta regra: 0xC4 de Verificação de Bugs: DRIVER_VERIFIER_DETECTED_VIOLATION (0x00081008)

Como testar

Em tempo de execução

Para verificar essa regra, abra uma janela do Prompt de Comando. Insira um comando Verificador de Driver e especifique /domain ks.

Por exemplo:

verifier /domain ks [opções] /driver<yourdriver>

Para obter mais informações, consulte Verificador de Driver.