Reference
Windows stop code reference
A stop code (bug check) is the number Windows shows on a blue screen to say why it halted. This is DumpReader's built-in reference — 167 codes with their 0x value and meaning. The code names the symptom; your .dmp file holds the evidence that names the cause.
Open the free analyzer and drop a dump from
C:\Windows\Minidump to decode your own crash, or read the
guide to reading a .dmp file first.
How to use this list
Find the code from your blue screen, then treat the description as a category rather than an answer. Two things narrow it further, and both live in the dump file rather than on the screen:
The four parameters
Every bug check carries four values that Windows fills in differently per code. For 0x1A the first parameter selects the memory-manager subtype; for 0x7F it identifies the processor trap. The same code with different parameters is a different fault.
The faulting address
If the instruction pointer at the moment of the crash falls inside a loaded driver's address range, that driver is named by arithmetic rather than by guesswork — the strongest evidence a minidump offers.
All Windows bug check codes
| Stop code | Code | What it reports |
|---|---|---|
| APC_INDEX_MISMATCH | 0x01 | Kernel APC state mismatch, usually a driver or system call filter bug. |
| DEVICE_QUEUE_NOT_BUSY | 0x02 | Legacy device-queue state error. |
| INVALID_AFFINITY_SET | 0x03 | Invalid processor affinity operation. |
| INVALID_DATA_ACCESS_TRAP | 0x04 | Invalid data access trap. |
| INVALID_PROCESS_ATTACH_ATTEMPT | 0x05 | KeStackAttachProcess misuse — driver attached while already attached or at bad IRQL. |
| INVALID_SOFTWARE_INTERRUPT | 0x07 | Invalid software interrupt request. |
| IRQL_NOT_DISPATCH_LEVEL | 0x08 | Routine requiring DISPATCH_LEVEL called at wrong IRQL. |
| IRQL_NOT_GREATER_OR_EQUAL | 0x09 | IRQL below required level for the attempted operation. |
| IRQL_NOT_LESS_OR_EQUAL | 0x0A | A kernel-mode driver touched pageable (or invalid) memory at an IRQL that is too high. Usually a buggy driver, sometimes faulty RAM. |
| NO_EXCEPTION_HANDLING_SUPPORT | 0x0B | Exception raised with no handler support present. |
| MAXIMUM_WAIT_OBJECTS_EXCEEDED | 0x0C | KeWaitForMultipleObjects called with too many objects. |
| MUTEX_LEVEL_NUMBER_VIOLATION | 0x0D | Mutexes were acquired out of their declared level order — a kernel locking-discipline bug in a driver. |
| TRAP_CAUSE_UNKNOWN | 0x12 | Trap with unknown cause — often hardware. |
| REFERENCE_BY_POINTER | 0x18 | Object reference count mismanaged by a driver (over-dereference). |
| BAD_POOL_HEADER | 0x19 | Pool block header corrupted. |
| MEMORY_MANAGEMENT | 0x1A | The memory manager found corruption in its own structures. Common causes: faulty RAM, a buggy driver corrupting PFN/PTEs, or disk corruption of the pagefile. |
| KMODE_EXCEPTION_NOT_HANDLED | 0x1E | A kernel-mode program generated an exception that no handler caught. Parameter 1 is the exception code, parameter 2 the address. |
| KERNEL_APC_PENDING_DURING_EXIT | 0x20 | Thread exited with kernel APCs pending — driver left APC state unbalanced. |
| QUOTA_UNDERFLOW | 0x21 | A process returned more quota than it had charged. |
| FILE_SYSTEM | 0x22 | File system internal error. |
| FAT_FILE_SYSTEM | 0x23 | FAT file system error, often disk corruption or a filter driver. |
| NTFS_FILE_SYSTEM | 0x24 | NTFS driver hit an unrecoverable condition — often disk corruption, failing storage, or a filter driver. Run chkdsk. |
| NPFS_FILE_SYSTEM | 0x25 | Named-pipe file system failure. |
| CDFS_FILE_SYSTEM | 0x26 | CD-ROM file system error. |
| RDR_FILE_SYSTEM | 0x27 | SMB redirector error. |
| INCONSISTENT_IRP | 0x2A | IRP found in an inconsistent state — driver mishandled it. |
| PANIC_STACK_SWITCH | 0x2B | Kernel stack overflow or corruption forced a panic stack switch. |
| DATA_BUS_ERROR | 0x2E | Parity error in system memory — almost always failing hardware (RAM, cache, or bus). |
| INSTRUCTION_BUS_ERROR | 0x2F | Instruction bus error — hardware. |
| PHASE0_INITIALIZATION_FAILED | 0x31 | Very early boot initialization failed. |
| PHASE1_INITIALIZATION_FAILED | 0x32 | Boot phase 1 initialization failed. |
| CACHE_MANAGER | 0x34 | Cache manager internal error, often non-paged pool exhaustion. |
| NO_MORE_IRP_STACK_LOCATIONS | 0x35 | A driver chained too many devices onto one IRP — driver stack misconfiguration. |
| DEVICE_REFERENCE_COUNT_NOT_ZERO | 0x36 | Device deleted while references remained. |
| SYSTEM_EXIT_OWNED_MUTEX | 0x39 | Thread exited while owning a mutex. |
| SYSTEM_SERVICE_EXCEPTION | 0x3B | An exception fired while executing a system service routine. Parameter 1 is the exception code. Usually a driver bug; graphics and antivirus drivers are frequent offenders. |
| INTERRUPT_UNWIND_ATTEMPTED | 0x3C | Unwind attempted through an interrupt frame. |
| INTERRUPT_EXCEPTION_NOT_HANDLED | 0x3D | Unhandled exception in an interrupt handler. |
| NO_MORE_SYSTEM_PTES | 0x3F | System PTEs exhausted — a driver leaked mapping resources. |
| TARGET_MDL_TOO_SMALL | 0x40 | Driver passed an undersized MDL. |
| MUST_SUCCEED_POOL_EMPTY | 0x41 | Kernel ran out of must-succeed pool. |
| MULTIPLE_IRP_COMPLETE_REQUESTS | 0x44 | A driver completed the same IRP twice — a serious driver bug. |
| CANCEL_STATE_IN_COMPLETED_IRP | 0x48 | Cancel routine set on an already-completed IRP. |
| PAGE_FAULT_WITH_INTERRUPTS_OFF | 0x49 | Page fault while interrupts disabled. |
| IRQL_GT_ZERO_AT_SYSTEM_SERVICE | 0x4A | A thread returned to user mode at elevated IRQL — driver bug. |
| FATAL_UNHANDLED_HARD_ERROR | 0x4C | Fatal hard error during boot (often missing/corrupt system files). |
| NO_PAGES_AVAILABLE | 0x4D | No free pages left — extreme memory pressure or a leak. |
| PFN_LIST_CORRUPT | 0x4E | The page frame number list is corrupt — usually faulty RAM or a driver corrupting memory descriptors. |
| PAGE_FAULT_IN_NONPAGED_AREA | 0x50 | Invalid system memory was referenced. Parameter 1 is the bad address. Causes: faulty RAM, a buggy driver/service, corrupted NTFS volume, or antivirus software. |
| REGISTRY_ERROR | 0x51 | Registry hive I/O or corruption problem. |
| CRITICAL_SERVICE_FAILED | 0x5A | A critical service failed during a system state transition. |
| HAL_INITIALIZATION_FAILED | 0x5C | HAL failed to initialize. |
| UNSUPPORTED_PROCESSOR | 0x5D | CPU lacks features this Windows build requires. |
| MEMORY1_INITIALIZATION_FAILED | 0x65 | Memory initialization failed during boot. |
| BAD_SYSTEM_CONFIG_INFO | 0x74 | SYSTEM registry hive is corrupt or missing required entries. |
| CANNOT_WRITE_CONFIGURATION | 0x75 | SYSTEM hive could not be written (disk full/failing). |
| PROCESS_HAS_LOCKED_PAGES | 0x76 | Driver left pages locked at process exit (param 1 identifies). |
| KERNEL_STACK_INPAGE_ERROR | 0x77 | A page of kernel stack could not be read from the pagefile — failing disk or bad RAM. |
| PHASE0_EXCEPTION | 0x78 | Exception during phase-0 boot. |
| MISMATCHED_HAL | 0x79 | HAL and kernel type mismatch. |
| KERNEL_DATA_INPAGE_ERROR | 0x7A | A page of kernel data could not be read from the pagefile. Parameter 2 holds the I/O status — often failing storage, bad sectors, or cabling. |
| INACCESSIBLE_BOOT_DEVICE | 0x7B | Windows lost access to the system partition during boot — storage driver or controller mode change (e.g. AHCI/RAID switch). |
| BUGCODE_NDIS_DRIVER | 0x7C | NDIS network driver violation. |
| SYSTEM_THREAD_EXCEPTION_NOT_HANDLED | 0x7E | A system thread raised an exception no handler caught. Parameter 1 is the exception code, parameter 2 the faulting address. |
| UNEXPECTED_KERNEL_MODE_TRAP | 0x7F | CPU trap the kernel cannot handle (double fault, bound check…). Often hardware: RAM, CPU overclock/undervolt, or a corrupted kernel stack. |
| NMI_HARDWARE_FAILURE | 0x80 | Non-maskable interrupt from hardware — vendor hardware failure signal. |
| KERNEL_MODE_EXCEPTION_NOT_HANDLED | 0x8E | Kernel-mode exception with no handler (legacy form of 0x1E). |
| UP_DRIVER_ON_MP_SYSTEM | 0x92 | Uniprocessor-only driver loaded on multiprocessor system. |
| INVALID_KERNEL_HANDLE | 0x93 | Kernel code closed a protected/invalid handle. |
| KERNEL_STACK_LOCKED_AT_EXIT | 0x94 | Thread exited with locked kernel stack. |
| INVALID_WORK_QUEUE_ITEM | 0x96 | Work item queued with bad list linkage — classic pool/list corruption. |
| INVALID_REGION_OR_SEGMENT | 0x99 | Invalid memory region/segment operation. |
| MACHINE_CHECK_EXCEPTION | 0x9C | The CPU reported an unrecoverable machine check — hardware failure (CPU, RAM, power, overheating). |
| USER_MODE_HEALTH_MONITOR | 0x9E | Cluster health monitor forced a bugcheck (server clusters). |
| DRIVER_POWER_STATE_FAILURE | 0x9F | A driver failed to complete a power transition (sleep/resume) in time. Parameter 4 is often the blocked IRP. Usually storage, network, or GPU drivers. |
| INTERNAL_POWER_ERROR | 0xA0 | Power manager internal error (often hibernation file problems). |
| ACPI_BIOS_ERROR | 0xA5 | ACPI BIOS gave the OS inconsistent tables — firmware bug. |
| SESSION_HAS_VALID_POOL_ON_EXIT | 0xAB | A session driver (usually graphics/printing) leaked pool memory on session exit. |
| HAL_MEMORY_ALLOCATION | 0xAC | HAL could not allocate required memory at boot. |
| ATTEMPTED_SWITCH_FROM_DPC | 0xB8 | Illegal context switch attempted inside a DPC. |
| CHIPSET_DETECTED_ERROR | 0xB9 | Chipset reported an unrecoverable error. |
| SESSION_HAS_VALID_VIEWS_ON_EXIT | 0xBA | Session driver leaked mapped views. |
| ATTEMPTED_WRITE_TO_READONLY_MEMORY | 0xBE | A driver wrote to read-only memory. Parameter 1 is the target address. The culprit is the driver owning the code at the current instruction pointer. |
| MUTEX_ALREADY_OWNED | 0xBF | Recursive acquisition of a non-recursive mutex. |
| SPECIAL_POOL_DETECTED_MEMORY_CORRUPTION | 0xC1 | A driver wrote outside its special-pool allocation — Driver Verifier caught buffer overrun/underrun. |
| BAD_POOL_CALLER | 0xC2 | A kernel component made an invalid pool request (double free, wrong tag/size) — driver bug. |
| DRIVER_VERIFIER_DETECTED_VIOLATION | 0xC4 | Driver Verifier caught a driver breaking the rules. Parameter meanings depend on parameter 1. |
| DRIVER_CORRUPTED_EXPOOL | 0xC5 | A driver corrupted the pool at a too-high IRQL — pool corruption by a driver. |
| DRIVER_CAUGHT_MODIFYING_FREED_POOL | 0xC6 | Driver wrote to pool it had already freed. |
| TIMER_OR_DPC_INVALID | 0xC7 | A kernel timer or DPC was found in freed/invalid memory — a driver freed memory still holding an active timer. |
| IRQL_UNEXPECTED_VALUE | 0xC8 | IRQL bookkeeping mismatch — driver unbalanced raise/lower. |
| DRIVER_VERIFIER_IOMANAGER_VIOLATION | 0xC9 | Driver Verifier I/O manager violation. |
| PNP_DETECTED_FATAL_ERROR | 0xCA | Plug-and-Play manager fatal error, often a bad device or driver. |
| DRIVER_LEFT_LOCKED_PAGES_IN_PROCESS | 0xCB | A driver failed to release locked pages after I/O. |
| PAGE_FAULT_IN_FREED_SPECIAL_POOL | 0xCC | Access to freed special-pool memory — use-after-free caught. |
| PAGE_FAULT_BEYOND_END_OF_ALLOCATION | 0xCD | Read/write past the end of an allocation — overrun caught. |
| DRIVER_UNLOADED_WITHOUT_CANCELLING_PENDING_OPERATIONS | 0xCE | A driver unloaded while operations (timers, DPCs, worker threads) were still pending. |
| DRIVER_CORRUPTED_MMPOOL | 0xD0 | Memory-manager pool corrupted by a driver. |
| DRIVER_IRQL_NOT_LESS_OR_EQUAL | 0xD1 | A driver accessed pageable/invalid memory at DISPATCH_LEVEL or above. Parameter 4 is the faulting address inside the culprit driver — this is a driver bug. |
| BUGCODE_ID_DRIVER | 0xD2 | Network driver identification bugcheck. |
| DRIVER_PORTION_MUST_BE_NONPAGED | 0xD3 | Pageable code/data used where nonpaged is required. |
| DRIVER_PAGE_FAULT_IN_FREED_SPECIAL_POOL | 0xD5 | A driver touched memory after freeing it — use-after-free caught by Driver Verifier. |
| DRIVER_PAGE_FAULT_BEYOND_END_OF_ALLOCATION | 0xD6 | A driver read/wrote past the end of its allocation — buffer overrun caught by Driver Verifier. |
| DRIVER_UNMAPPING_INVALID_VIEW | 0xD7 | Driver unmapped a view it didn't map. |
| DRIVER_USED_EXCESSIVE_PTES | 0xD8 | A driver exhausted system PTEs. |
| LOCKED_PAGES_TRACKER_CORRUPTION | 0xD9 | MDL lock-tracking structures corrupted. |
| SYSTEM_PTE_MISUSE | 0xDA | System PTE routines misused by a driver. |
| DRIVER_CORRUPTED_SYSPTES | 0xDB | Driver corrupted system PTEs. |
| DRIVER_INVALID_STACK_ACCESS | 0xDC | Driver accessed a stack address outside its thread's stack. |
| POOL_CORRUPTION_IN_FILE_AREA | 0xDE | Pool corruption detected in pages destined for disk. |
| IMPERSONATING_WORKER_THREAD | 0xDF | Worker item ran while still impersonating — token leak. |
| WORKER_THREAD_RETURNED_AT_BAD_IRQL | 0xE1 | A worker routine returned at elevated IRQL — driver bug. |
| MANUALLY_INITIATED_CRASH | 0xE2 | Crash was triggered manually (keyboard crash dump or NMI switch). |
| RESOURCE_NOT_OWNED | 0xE3 | A thread released a resource it did not own — driver/filesystem bug. |
| WORKER_INVALID | 0xE4 | Invalid kernel worker item — often a driver queued a worker in freed memory. |
| DRIVER_VERIFIER_DMA_VIOLATION | 0xE6 | Driver Verifier caught an illegal DMA operation. |
| ACTIVE_EX_WORKER_THREAD_TERMINATION | 0xE9 | Executive worker thread terminated while active. |
| THREAD_STUCK_IN_DEVICE_DRIVER | 0xEA | A device driver spun forever — almost always the GPU driver. |
| UNMOUNTABLE_BOOT_VOLUME | 0xED | Boot volume could not be mounted. |
| CRITICAL_PROCESS_DIED | 0xEF | A process critical to Windows (csrss, wininit, services…) terminated unexpectedly. Check Event Log, system file integrity (sfc /scannow), and recent software. |
| SCSI_VERIFIER_DETECTED_VIOLATION | 0xF1 | SCSI verifier caught a storage-driver violation. |
| CRITICAL_OBJECT_TERMINATION | 0xF4 | A critical system process or thread terminated. Often failing storage (the process image could not be paged back in). |
| FLTMGR_FILE_SYSTEM | 0xF5 | Filter Manager fatal error — a file system minifilter (antivirus, backup, sync tools) misbehaved. |
| DRIVER_OVERRAN_STACK_BUFFER | 0xF7 | A driver smashed its own stack buffer (stack-based overrun) — /GS caught it. |
| DRIVER_RETURNED_STATUS_REPARSE_FOR_VOLUME_OPEN | 0xF9 | Driver returned STATUS_REPARSE for a volume open. |
| HTTP_DRIVER_CORRUPTED | 0xFA | HTTP.sys internal corruption. |
| ATTEMPTED_EXECUTE_OF_NOEXECUTE_MEMORY | 0xFC | The CPU tried to execute non-executable memory — corrupted function pointers, bad drivers, or exploit mitigation firing. |
| BUGCODE_USB_DRIVER | 0xFE | Fatal error in a USB driver or a device it controls. |
| CLOCK_WATCHDOG_TIMEOUT | 0x101 | A secondary processor missed clock interrupts — a core stopped responding. |
| DPC_WATCHDOG_TIMEOUT | 0x102 | DPC ran past the watchdog limit (predecessor of 0x133). |
| MUP_FILE_SYSTEM | 0x103 | Multiple UNC provider (network FS) failure. |
| THIRD_PARTY_FILE_SYSTEM_FAILURE | 0x108 | Third-party file system driver failed. |
| CRITICAL_STRUCTURE_CORRUPTION | 0x109 | PatchGuard: the kernel or a critical structure was modified. Causes: rootkits, aggressive anti-cheat/AV drivers, failing RAM, or CPU overclocks. |
| WDF_VIOLATION | 0x10D | Kernel-Mode Driver Framework caught a framework rule violation. |
| VIDEO_MEMORY_MANAGEMENT_INTERNAL | 0x10E | Video memory manager internal error. |
| RECURSIVE_NMI | 0x111 | NMI arrived while a previous NMI was in progress. |
| MSRPC_STATE_VIOLATION | 0x112 | MSRPC kernel state violation. |
| VIDEO_DXGKRNL_FATAL_ERROR | 0x113 | DirectX graphics kernel hit an unrecoverable inconsistency. |
| VIDEO_SHADOW_DRIVER_FATAL_ERROR | 0x114 | Shadow display driver fatal error. |
| VIDEO_TDR_FAILURE | 0x116 | The display driver failed to reset the GPU in time (TDR). GPU driver bug, overheating, unstable overclock, or failing GPU. |
| VIDEO_TDR_TIMEOUT_DETECTED | 0x117 | The display driver hung and was reset (TDR recovered, then failed). |
| VIDEO_SCHEDULER_INTERNAL_ERROR | 0x119 | GPU scheduler fatal error — usually the graphics driver. |
| DRIVER_RETURNED_HOLDING_CANCEL_LOCK | 0x11B | Driver returned still holding the cancel spin lock. |
| ATTEMPTED_WRITE_TO_CM_PROTECTED_STORAGE | 0x11C | Write attempted to protected registry storage. |
| EVENT_TRACING_FATAL_ERROR | 0x11D | ETW kernel tracing fatal error. |
| DRIVER_VIOLATION | 0x121 | Driver violated a kernel contract. |
| WHEA_INTERNAL_ERROR | 0x122 | WHEA hardware-error infrastructure internal error. |
| WHEA_UNCORRECTABLE_ERROR | 0x124 | The CPU/platform reported a fatal hardware error (WHEA/machine check). Almost always hardware: CPU, RAM, power delivery, overheating, or unstable overclock/undervolt. |
| PAGE_NOT_ZERO | 0x127 | A page expected to be zero contained data — corruption after power events or RAM faults. |
| FAULTY_HARDWARE_CORRUPTED_PAGE | 0x12B | A single-bit error was found in a memory page — physical RAM problem. |
| DPC_WATCHDOG_VIOLATION | 0x133 | A DPC or code at DISPATCH_LEVEL ran too long and starved the CPU. Common: storage drivers (check firmware/AHCI drivers), GPU drivers, or firmware. |
| KERNEL_SECURITY_CHECK_FAILURE | 0x139 | The kernel detected corruption of a security-critical structure (list entry, stack cookie…). Parameter 1 tells which check. Faulty RAM or a buggy driver. |
| KERNEL_MODE_HEAP_CORRUPTION | 0x13A | Kernel heap corruption detected — buggy driver or bad RAM. |
| BUGCODE_USB3_DRIVER | 0x144 | Fatal error in the USB 3 (xHCI) driver stack. |
| SOC_SUBSYSTEM_FAILURE | 0x14B | System-on-chip subsystem failure. |
| UNEXPECTED_STORE_EXCEPTION | 0x154 | The memory compression store hit an unrecoverable exception — often failing disk or RAM. |
| BUGCODE_NDIS_DRIVER_LIVE_DUMP | 0x15E | NDIS captured a live dump for a network driver fault. |
| CONNECTED_STANDBY_WATCHDOG_TIMEOUT_LIVEDUMP | 0x15F | Connected-standby watchdog timeout. This code only ever appears in a live dump, never in a real blue screen. |
| KERNEL_AUTO_BOOST_INVALID_LOCK_RELEASE | 0x162 | AutoBoost-tracked lock released by wrong owner. |
| SECURE_KERNEL_ERROR | 0x18B | The secure kernel (virtualization-based security) hit an unrecoverable error — VBS/HVCI, firmware, or a security driver. |
| KERNEL_AUTO_BOOST_LOCK_ACQUISITION_WITH_RAISED_IRQL | 0x192 | A lock was acquired at raised IRQL with AutoBoost — driver bug. |
| LOADER_ROLLBACK_DETECTED | 0x196 | Boot loader rollback detected. |
| DRIVER_VERIFIER_DETECTED_VIOLATION_LIVEDUMP | 0x1C4 | Driver Verifier violation (live dump variant). |
| STORE_DATA_STRUCTURE_CORRUPTION | 0x1C7 | Memory compression store corruption — RAM or driver. |
| MANUALLY_INITIATED_POWER_BUTTON_HOLD | 0x1C8 | The crash was forced deliberately by holding the hardware power button — a diagnostic capture, not a fault. |
| SYNTHETIC_WATCHDOG_TIMEOUT | 0x1CA | Virtual machine watchdog timed out. |
| WFP_INVALID_OPERATION | 0x1D3 | A Windows Filtering Platform callout performed an invalid operation — firewall, VPN or packet-inspection driver. |
Authoritative source: Microsoft Bug Check Code Reference.