| Previous | Next |
| TERMINAL_SERVER_DRIVER_MADE_INCORRECT_MEMORY_REFERENCE | DRIVER_IRQL_NOT_LESS_OR_EQUAL |
DRIVER_CORRUPTED_MMPOOL
The result bug check has a value of 0x000000D0. This indicates that the system attempted to access invalid memory at a process IRQL that was too high.
Important
This topic is for programmers. If you are a customer who has received a blue screen error code while using your computer, see Troubleshoot blue screen errors.
DRIVER_CORRUPTED_MMPOOL Parameters
| Parameter | Description |
|---|---|
1 |
Memory referenced |
2 |
IRQL at time of reference |
3 |
0: Read 1: Write |
4 |
Address that referenced memory |
Cause
The kernel attempted to access pageable memory (or perhaps completely invalid memory) when the IRQL was too high. The ultimate cause of this problem is almost certainly a driver that has corrupted the system pool.
In most cases, this bug check results if a driver corrupts a large allocation (PAGE_SIZE or larger). Smaller allocations result in bug check 0xC5 (DRIVER_CORRUPTED_EXPOOL).
Resolution
If you have recently installed any new software, check to see if it is properly installed. Check for updated drivers on the manufacturer's website.
To debug this error, use the special pool option of Driver Verifier. If this fails to reveal the driver that caused the error, use the Global Flags utility to enable the special pool by pool tag.
For information about the special pool, consult the Driver Verifier section of the Windows Driver Kit.
An alternate method is to open the \\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management registry key. In this key, create or edit the ProtectNonPagedPool value, and set it equal to DWORD 1. Then reboot. Then the system will unmap all freed nonpaged pool. This will prevent drivers from corrupting the pool. (This does not protect the pool from DMA hardware, however.)
Distinctive failure boundary
This result identifies driver corruption of memory-manager pool. Inspect the memory-manager pool structures named by the parameters, page and allocation metadata, mapping activity, and drivers manipulating MDLs, sections, or locked pages.
Separating the result from neighboring bug checks
Compare the corrupt address with executive-pool allocations before assuming the EXPOOL and MMPOOL stop codes are interchangeable. Preserve the original dump and use the documented parameters and stack to verify this distinction before changing drivers or platform configuration.
Looking for a different code? Search another status or error code.