| Previous | Next |
| DRIVER_CAUGHT_MODIFYING_FREED_POOL | IRQL_UNEXPECTED_VALUE |
TIMER_OR_DPC_INVALID
The TIMER_OR_DPC_INVALID bug check has a value of 0x000000C7. This is issued if a kernel timer or delayed procedure call (DPC) is found somewhere in memory where it is not permitted.
Important
TIMER_OR_DPC_INVALID Parameters
| Parameter 1 | Parameter 2 | Parameter 3 | Parameter 4 | Cause of error |
|---|---|---|---|---|
0x0 |
Address of the timer object |
Start of memory range being checked |
End of memory range being checked |
The timer object was found in a block of memory where a timer object is not permitted. . |
0x1 |
Address of the DPC object |
Start of memory range being checked |
End of memory range being checked |
The DPC object was found in a block of memory where a DPC object is not permitted. |
0x2 |
Address of the DPC routine |
Start of memory range being checked |
End of memory range being checked |
The DPC routine was found in a block of memory where a DPC object is not permitted. |
0x3 |
Address of the DPC object |
Processor number |
Number of processors in the system |
The processor number for the DPC object is not correct. |
0x4 |
Address of the DPC routine |
The thread's APC disable count before the kernel calls the DPC routine |
The thread's APC disable count after the DPC routine is called |
The thread's APC disable count was changed during DPC routine execution. The APC disable count is decremented in the The APC disable count is incremented in the |
0x5 |
Address of the DPC routine |
The thread's APC disable count before the kernel calls the DPC routine |
The thread's APC disable count after the DPC routine is called |
The thread's APC disable count was changed during the execution of timer DPC routine. The APC disable count is decremented each time a driver calls KeEnterCriticalRegion, FsRtlEnterFileSystem, or acquires a mutex. The APC disable count is incremented each time a driver calls KeLeaveCriticalRegion, KeReleaseMutex, or FsRtlExitFileSystem. |
Cause for TIMER_OR_DPC_INVALID
This condition is usually caused by a driver failing to cancel a timer or DPC before freeing the memory where it resides.
Resolution for TIMER_OR_DPC_INVALID
For TIMER_OR_DPC_INVALID, if you are the driver writer, use the information obtained through this bug check to fix the bugs in your code.
If you are a system administrator, you should unload the driver if the problem persists.
Official references for TIMER_OR_DPC_INVALID
- Microsoft: Bug check code reference
- Microsoft: Analyze a kernel-mode dump with WinDbg
- Microsoft: WinDbg !analyze command
Looking for a different code? Search another status or error code.