KsIrqlPinCallbacks 规则 ()
KsIrqlPinCallbacks 规则指定内核流 (KS) 微型端口驱动程序从 KS Pin 回调函数返回,该函数的 IRQL 与调用时使用的 IRQL 相同。
调试提示
当驱动程序验证程序检测到此规则的冲突时,它会触发 bug 检查0xC4:DRIVER_VERIFIER_DETECTED_VIOLATION,其 arg1 值为 0x00081008。 bug 检查的 arg3 (RuleState) 和 arg4 (SubState) 提供了指向有关规则冲突的其他信息的指针。
使用 !ruleinfo 调试器扩展来了解 IRQL 值在函数进入和退出时的值。
使用 命令:
!ruleinfo 0x81008 RuleState SubState。
在规则状态数据中,在输入回调时, OldIrql 是 IRQL。 退出回调函数时, NewIrql 是 IRQL 。
请勿使用 !irql 来确定当前的 IRQL,因为驱动程序验证程序可能在 bug 检查之前引发 IRQL。 请改用 !verifier 0x008 查看 IRQL 日志。
驱动程序模型:KS
通过此规则找到 Bug 检查: Bug 检查0xC4:DRIVER_VERIFIER_DETECTED_VIOLATION (0x00081008)
如何测试
运行时 |
---|
若要验证此规则,请打开命令提示符窗口。 输入驱动程序验证程序命令并指定 /domain ks。 例如: verifier /domain ks [options] /driver <yourdriver> 有关详细信息,请参阅驱动程序验证程序。 |