KsIrqlDeviceCallbacksルール ()
KsIrqlDeviceCallbacks 規則は、カーネル ストリーミング (KS) ミニポート ドライバーが呼び出されたときと同じ IRQL を持つ KS デバイス コールバック関数から返されることを指定します。
デバッグのヒント
ドライバー検証ツールは、この規則の違反を検出すると、 arg1 値が 0x00081006 の バグ チェック 0xC4: DRIVER_VERIFIER_DETECTED_VIOLATIONをトリガーします。 バグチェックの arg3 (RuleState) と arg4 (SubState) は、規則違反に関する追加情報へのポインターを提供します。
!ruleinfo デバッガー拡張機能を使用して、関数のエントリと終了時に IRQL 値が何であったかを確認します。
コマンドを使用する。
!ruleinfo 0x81006 RuleState SubState。
ルール状態データでは、コールバックの 入力時に OldIrql が IRQL になります。 NewIrql は、コールバック関数が終了したときの IRQL です。
バグがチェックする前にドライバー検証ツールによって IRQL が発生した可能性があるため、 !irql を使用して現在の IRQL を特定しないでください。 代わりに、 !verifier 0x008 を使用して IRQL ログを表示します。
ドライバー モデル: KS
このルールで見つかったバグ チェック: バグ チェック 0xC4: DRIVER_VERIFIER_DETECTED_VIOLATION (0x00081006)
テスト方法
実行時 |
---|
このルールを確認するには、コマンド プロンプト ウィンドウを開きます。 ドライバー検証ツール コマンドを入力し、 /domain ks を指定します。 次に例を示します。 verifier /domain ks [options] /driver <yourdriver> 詳細については、「ドライバーの検証ツール」を参照してください。 |