バグ チェック 0xC7: TIMER_OR_DPC_INVALID

TIMER_OR_DPC_INVALID バグ チェックには、0x000000C7の値があります。 これは、カーネル タイマーまたは遅延プロシージャ 呼び出し (DPC) が許可されていないメモリ内のどこかで見つかった場合に発行されます。

重要

この記事は、プログラマー向けです。 コンピューターを使用中に、ブルー スクリーン エラーが表示された場合は、「ブルー スクリーン エラーのトラブルシューティング」を参照してください。

TIMER_OR_DPC_INVALID パラメーター

パラメーター 1 パラメータ 2 パラメーター 3 パラメーター 4 エラーの原因

0x0

タイマー オブジェクトのアドレス

チェックされているメモリ範囲の開始

チェックされているメモリ範囲の終了

タイマー オブジェクトが許可されていないメモリ ブロックでタイマー オブジェクトが見つかりました。 .

0箸1

DPC オブジェクトのアドレス

チェックされているメモリ範囲の開始

チェックされているメモリ範囲の終了

DPC オブジェクトが許可されていないメモリ ブロックで DPC オブジェクトが見つかりました。

0等2

DPC ルーチンのアドレス

チェックされているメモリ範囲の開始

チェックされているメモリ範囲の終了

DPC オブジェクトが許可されていないメモリ ブロックで DPC ルーチン が見つかりました。

0x3

DPC オブジェクトのアドレス

プロセッサ番号

システム内のプロセッサの数

DPC オブジェクトのプロセッサ番号が正しくありません。

0餡4

DPC ルーチンのアドレス

カーネルが DPC ルーチンを呼び出す前のスレッドの APC 無効化カウント

DPC ルーチンが呼び出された後のスレッドの APC 無効化カウント

DPC ルーチンの実行中にスレッドの APC 無効カウントが変更されました。

APC 無効カウントは、ドライバーが KeEnterCriticalRegionFsRtlEnterFileSystem を呼び出すか、ミューテックスを取得するたびにデクリメントされます。

APC 無効カウントは、ドライバーが KeLeaveCriticalRegionKeReleaseMutex または FsRtlExitFileSystem を呼び出すたびにインクリメントされます。

0x5

DPC ルーチンのアドレス

カーネルが DPC ルーチンを呼び出す前のスレッドの APC 無効化カウント

DPC ルーチンが呼び出された後のスレッドの APC 無効化カウント

タイマー DPC ルーチンの実行中に、スレッドの APC 無効カウントが変更されました。

APC 無効カウントは、ドライバーが KeEnterCriticalRegionFsRtlEnterFileSystem を呼び出すか、ミューテックスを取得するたびにデクリメントされます。

APC 無効カウントは、ドライバーが KeLeaveCriticalRegionKeReleaseMutex または FsRtlExitFileSystem を呼び出すたびにインクリメントされます。

原因

通常、この状態は、ドライバーがタイマやDPCが存在するメモリを解放する前にタイマーまたは DPC をキャンセルできなかったために発生します。

解決方法

あなたがドライバーの作者である場合は、このバグ チェックで取得した情報を使用して、コード内のバグを修正してください。

システム管理者の場合は、問題が解決しない場合はドライバーをアンロードする必要があります。