Regla KsIrqlPinCallbacks ()

La regla KsIrqlPinCallbacks especifica que un controlador de minipuerto de secuencia de kernel (KS) devuelve de una función de devolución de llamada de KS Pin con el mismo IRQL que tenía cuando se llamó.

Sugerencias para la depuración

Cuando el Comprobador de controladores detecta una infracción de esta regla, desencadena la comprobación de errores 0xC4: DRIVER_VERIFIER_DETECTED_VIOLATION, con un valor arg1 de 0x00081008. Los argumentos arg3 (RuleState) y arg4 (SubState) de la comprobación de errores proporcionan punteros a información adicional sobre la infracción de la regla.

Use la extensión del depurador !ruleinfo para averiguar cuáles eran los valores irQL en la entrada y salida de la función.

Use el comando:

!ruleinfo 0x81008SubState RuleState.

En los datos de estado de la regla, OldIrql es irQL cuando se escribe la devolución de llamada. NewIrql es irQL cuando se cierra la función de devolución de llamada.

No use !irql para determinar el IRQL actual porque el comprobador de controladores podría haber generado IRQL antes de la comprobación de errores. En su lugar, use !comprobador 0x008 para ver los registros de IRQL.

Modelo de controlador: KS

Comprobaciones de errores encontradas con esta regla: Comprobación de errores 0xC4: DRIVER_VERIFIER_DETECTED_VIOLATION (0x00081008)

Cómo probar

En tiempo de ejecución

Para comprobar esta regla, abra una ventana del símbolo del sistema. Escriba un comando Driver Verifier y especifique /domain ks.

Por ejemplo:

comprobador /domain ks [options] /driver<yourdriver>

Para obtener más información, consulte Comprobador de controladores.