| Previous | Next |
| SYSTEM_SCAN_AT_RAISED_IRQL_CAUGHT_IMPROPER_DRIVER_UNLOAD | DRIVER_PAGE_FAULT_BEYOND_END_OF_ALLOCATION |
DRIVER_PAGE_FAULT_IN_FREED_SPECIAL_POOL
DRIVER_PAGE_FAULT_IN_FREED_SPECIAL_POOL is the driver-specific use-after-free Special Pool stop. Microsoft states that Driver Verifier caught a driver referencing memory that had already been freed. This is a lifetime error, not an overrun beyond the end of a still-live allocation.
Parameters identify the access
- Parameter 1 is the referenced memory address.
- Parameter 2 distinguishes a read (
0) from a write (1). - Parameter 3 is the instruction address that referenced the memory when known.
Use the instruction address and stack to identify the owner of the stale pointer. The driver name may also be available through KiBugCheckDriver.
What to fix
Look for object or buffer lifetime races: a request completes or a device path tears down, one path frees the allocation, and another path still dereferences it. Special Pool is the detector here. Increasing pool size or changing the allocation length does not repair the invalid post-free access.
References
Looking for a different code? Search another status or error code.