Debugging Tools for Windows

Bug Check 0x19: BAD_POOL_HEADER

The BAD_POOL_HEADER bug check has a value of 0x00000019. This indicates that a pool header is corrupt.

Parameters

The following parameters are displayed on the blue screen. Parameter 1 indicates the type of violation. The meaning of the other parameters depends on the value of Parameter 1.

Parameter 1 Parameter 2 Parameter 3 Parameter 4 Cause of Error
0x2 The pool entry being checked The size of the pool block 0 The special pool pattern check failed.

(The owner has likely corrupted the pool block.)

0x3 The pool entry being checked The read-back flink freelist value The read-back blink freelist value The pool freelist is corrupt.

(In a healthy list, the values of Parameters 2, 3, and 4 should be identical.)

0x5 One of the pool entries Reserved The other pool entry A pair of adjacent pool entries have headers that contradict each other. At least one of them is corrupt.
0x6 One incorrectly-calculated entry Reserved The bad entry that caused the miscalculation The pool block header's previous size is too large.
0x7 0 Reserved The bad pool entry The pool block header size is corrupt.
0x8 0 Reserved The bad pool entry The pool block header size is zero.
0x9 One incorrectly-calculated entry Reserved The bad entry that caused the miscalculation The pool block header size is corrupted (it is too large).
0xA The pool entry that should have been found Reserved The virtual address of the page that should have contained the pool entry The pool block header size is corrupt.
0x20 The pool entry that should have been found The next pool entry Reserved The pool block header size is corrupt.

Cause

The pool is already corrupted at the time of the current request.

This may or may not be due to the caller.

Resolving the Problem

The internal pool links must be walked to figure out a possible cause of the problem.

Then you can use special pool for the suspect pool tags, or use Driver Verifier on the suspect driver. The !analyze extension may be of help in pinpointing the suspect driver, but this is frequently not the case with pool corrupters.

Build machine: CAPEBUILD