Expand Minimize
4 out of 8 rated this helpful - Rate this topic

Bug Check 0xC1: SPECIAL_POOL_DETECTED_MEMORY_CORRUPTION

The SPECIAL_POOL_DETECTED_MEMORY_CORRUPTION bug check has a value of 0x000000C1. This indicates that the driver wrote to an invalid section of the special pool.

Important Info If You Have Received a STOP Code

If you received a blue screen error, or stop code, the computer has shut down abruptly to protect itself from data loss. A hardware device, its driver, or related software might have caused this error. If your copy of Windows came with your computer, call the manufacturer of your computer. If you purchased Windows separately from your computer, Microsoft provides support. To find contact info for Microsoft or your computer manufacturer, Contact Support.

If you have experience with computers and want to try to recover from this error, follow the steps provided in the Microsoft article Resolving STOP (Blue Screen) Errors in Windows.

These actions might prevent an error like this from happening again:

  1. Download and install updates and device drivers for your computer from Windows Update.
  2. Scan your computer for computer viruses.
  3. Check your hard disk for errors.

SPECIAL_POOL_DETECTED_MEMORY_CORRUPTION Parameters

The following parameters are displayed on the blue screen. Parameter 4 indicates the type of violation.

Parameter 1Parameter 2Parameter 3Parameter 4Cause of Error

Address that the driver tried to free

Reserved

0

0x20

A driver attempted to free pool which was not allocated.

Address that the driver tried to free

Bytes requested

Bytes calculated (actually given to the caller)

0x21,

0x22

A driver attempted to free a bad address.

Address that the driver tried to free

Address where bits are corrupted

Reserved

0x23

A driver freed an address, but nearby bytes within the same page have been corrupted.

Address that the driver tried to free

Address where bits are corrupted

Reserved

0x24

A driver freed an address, but bytes occurring after the end of the allocation have been overwritten.

Current IRQL

Pool type

Number of bytes

0x30

A driver attempted to allocate pool at an incorrect IRQL.

Current IRQL

Pool type

Address that the driver tried to free

0x31

A driver attempted to free pool at an incorrect IRQL.

Address that the driver tried to free

Address where one bit is corrupted

Reserved

0x32

A driver freed an address, but nearby bytes within the same page have a single bit error.

 

The _POOL_TYPE codes are enumerated in ntddk.h. In particular, zero indicates nonpaged pool and one indicates paged pool.

Cause

A driver has written to an invalid section of the special pool.

Resolution

Obtain a backtrace of the current thread. This backtrace will usually reveal the source of the error.

For information about the special pool, consult the Driver Verifier section of the Windows Driver Kit.

 

 

Send comments about this topic to Microsoft

Build date: 4/9/2013

Did you find this helpful?
(1500 characters remaining)
© 2013 Microsoft. All rights reserved.