BSOD Codes

DRIVER_CORRUPTED_EXPOOL: Tracing Corrupt ExPool Allocations


Introduction

The Windows stop code DRIVER_CORRUPTED_EXPOOL is a Blue Screen of Death (BSOD) that indicates a driver has corrupted the executive pool (ExPool) — a critical area of kernel memory that Windows uses for dynamic allocations. You’ll typically see this on Windows 10 or Windows 11 systems during heavy I/O, network activity, gaming, or right after installing/updating a driver or firmware. It’s critical to fix because pool corruption often points to unstable kernel-mode components; left unresolved, it can lead to repeated crashes, potential data loss, and underlying hardware damage going undiagnosed.

This guide goes beyond generic advice. It provides step-by-step troubleshooting, minidump analysis, and advanced diagnostics to trace corrupt ExPool allocations and identify which driver or component is at fault.


Understanding the Error

The DRIVER_CORRUPTED_EXPOOL stop code (often shown as bug check code 0x000000C5) means a kernel-mode driver performed an illegal memory operation, such as writing to a freed or invalid pool allocation. In plain language: a driver mishandled kernel memory (ExPool), causing corruption that Windows detected and halted to protect the system.

What this typically looks like:

  • The system crashes with “DRIVER_CORRUPTED_EXPOOL” or variations like Driver Corrupted ExPool.
  • It may occur during device-intensive tasks (network, storage, GPU) or after updating/adding drivers.
  • The crash can be intermittent or appear in clusters, especially after rebooting from a previous BSOD.

Common technical triggers:

  • Use-after-free: a driver accesses memory after it’s been released back to the pool.
  • Double free or invalid frees of pool memory.
  • Buffer overflows: writing beyond allocated bounds.
  • IRQL misuse: memory access at the wrong interrupt request level.
  • Faulty IRP handling or filter-driver chaining errors (common with antivirus, VPN, and network filter drivers).

Common Causes

The most likely root causes of DRIVER_CORRUPTED_EXPOOL on Windows 10/11:

  • Faulty or incompatible drivers
    • Outdated or buggy GPU, storage (SATA/NVMe/RAID), network (Wi‑Fi/Ethernet), USB controller, or filter drivers (e.g., VPN, antivirus).
  • Unstable memory (RAM)
    • Overclocked RAM (XMP/EXPO profiles) or marginal modules causing subtle corruption.
  • Firmware/BIOS problems
    • Old UEFI/BIOS, unstable overclocking, or problematic BIOS settings affecting memory timing or devices.
  • Windows updates or feature upgrades
    • New kernel changes exposing latent driver bugs; incomplete or corrupted updates.
  • Disk/file system issues
    • Corruption that spills into driver binaries or system files; failing SSD/HDD firmware.
  • Malware or low-level security software
    • Rootkits, kernel hooks, or aggressive security suites with buggy NDIS or file system filter drivers.
  • Third-party utilities
    • RGB/monitoring tools, sensor and overclocking utilities, USB controller suites, or older virtualization drivers.

Skimmable checklist of triggers:

  • Recent driver/Windows update
  • New hardware or USB devices
  • Overclocking (CPU/GPU/RAM)
  • New VPN/AV/security software
  • Firmware or BIOS changes
  • Random restarts/BSOD during I/O-heavy tasks
See also  KERNEL_AUTO_BOOST_LOCK_ACQUISITION_WITH_RAISED_IRQL: What to Change and Why

Preliminary Checks

Before diving into deeper diagnostics, perform these quick and safe checks.

  • Boot into Safe Mode
    • Windows 10/11:
      • Hold Shift and click Restart → Troubleshoot → Advanced options → Startup Settings → Restart → Press 4 or F4 for Safe Mode (or 5/F5 for Safe Mode with Networking).
    • Alternatively, run:
      • Press Win+R → type: msconfig → Boot tab → check Safe boot → Minimal → Apply → Restart.
  • Back up important data
    • Use cloud backup, an external drive, or File History. Crashes can increase risk of data loss.
  • Run basic health checks
    • Open an elevated Command Prompt (Run as administrator) and run:

chkdsk C: /scan
sfc /scannow
dism /online /cleanup-image /restorehealth

  • If SFC finds errors it cannot fix, rerun DISM and then SFC again.
  • Revert overclocks
    • Set BIOS to Optimized Defaults, disable CPU/GPU overclocks, and temporarily turn off XMP/EXPO. Memory instability commonly manifests as pool corruption.

Step-by-Step Troubleshooting

Follow these steps in order, from easiest to most targeted. Stop when the issue is resolved.

1) Update or Roll Back Problematic Drivers

  • Update critical drivers first:
    • Chipset, SATA/RAID/NVMe (Intel RST/AMD SATA), GPU (NVIDIA/AMD/Intel), network adapters, Bluetooth/USB controllers.
    • Prefer OEM or component vendor websites over Device Manager’s automatic search.
  • If the BSOD started after a driver update:
    • Use Device Manager → right-click device → PropertiesDriverRoll Back Driver (if available).
  • For GPU drivers, use DDU (Display Driver Uninstaller) in Safe Mode to fully remove and then clean-install the latest stable driver.

2) Uninstall Recent or High-Risk Software

  • Remove recent installs or updates before the first BSOD.
  • Temporarily uninstall:
    • Antivirus/Endpoint security, VPN, network accelerators, virtualization drivers, RGB/monitoring/overclocking utilities.
  • Reboot and test. If the BSOD stops, look for updated versions or replacements.

3) Windows Update and Optional Driver Updates

  • Install pending Windows updates (Settings → Windows Update).
  • Expand Optional updates and consider installing relevant driver updates if sourced from your OEM.
  • If the error began right after a feature update:
    • Go to Settings → System → Recovery → Go back (if still available) to roll back to the previous version.

4) Storage and System File Integrity (Deeper)

  • From an elevated PowerShell, check SMART quickly:

Get-PhysicalDisk | Select FriendlyName, HealthStatus, OperationalStatus

  • If HealthStatus isn’t Healthy, consider vendor SSD tools (Samsung Magician, Crucial Storage Executive, WD Dashboard) for detailed SMART and firmware updates.
  • For file system repairs, schedule a full disk check:

chkdsk C: /f /r

  • You’ll be prompted to run on reboot. This can take time.

5) Memory Diagnostics (RAM)

  • Run Windows Memory Diagnostic:
    • Press Win+R → mdsched.exe → Restart now and check for problems.
  • For deeper testing, use MemTest86 (bootable USB) for multiple passes.
  • If errors appear:
    • Test sticks individually, alternate slots, or reduce to a single module.
    • Keep RAM at JEDEC defaults (disable XMP/EXPO) while testing.
    • Replace faulty modules if confirmed.

6) BIOS/UEFI and Firmware

  • Update to the latest stable BIOS/UEFI from your motherboard/laptop OEM.
  • After update, load Optimized Defaults, then set only essentials (boot order, virtualization if needed).
  • Update device firmware (SSD firmware, Thunderbolt, docking stations) from OEM tools.

7) System Restore or Known Good State

  • Use System Restore:
    • Win+R → rstrui.exe → choose a restore point before the problem started.
  • If you do not have restore points, consider a clean boot to isolate conflicts:
    • msconfig → Services → Hide all Microsoft services → Disable all
    • Startup tab → Open Task Manager → Disable all startup items → Reboot and test.
See also  PAGE_FAULT_IN_FREED_SPECIAL_POOL: Repro Steps and Mitigations

8) Enable and Analyze Minidumps (Crash Dumps)

Enable minidumps:

  • Press Win+R → type: sysdm.cpl → Enter.
  • Advanced tab → Startup and Recovery → Settings.
  • Under “Write debugging information” choose Small memory dump (256 KB).
  • Dump directory: %SystemRoot%\Minidump (typically C:\Windows\Minidump).
  • Ensure the page file is enabled (System managed) on the OS drive.

Locate dumps:

  • C:\Windows\Minidump*.dmp

Analyze with BlueScreenView (simpler):

  • Download NirSoft BlueScreenView.
  • Open it; it will list bugchecks and probable causes.
  • Look for repeating drivers/modules in the Caused by driver column.

Analyze with WinDbg (deeper):

  • Install WinDbg (Microsoft Store: “WinDbg Preview”).
  • Open WinDbg → File → Open dump file → select latest .dmp.
  • In the command window, run:

.symfix
.reload
!analyze -v
lmtn

  • Look for:
    • “Probably caused by” module.
    • Stack trace and offending driver function.
    • Bugcheck parameters and memory address context.
  • For suspected pool corruption, also try:

!pool !verifier

  • Then find driver details:

lmvm

  • If a third-party driver repeatedly appears, update or uninstall it.

9) Targeted Driver Repair

  • For a specific offending driver:
    • Download latest from the OEM or component vendor.
    • If not available or still failing, revert to a prior stable version.
    • Remove associated software suite if not essential (use vendor cleanup tools).

10) In-Place Repair (Repair Install)

If corruption persists:

  • Perform a Windows in-place repair (keeps apps and files):
    • Download the Media Creation Tool from Microsoft.
    • Choose Upgrade this PC now or mount a Windows ISO and run setup.exe.
    • Select Keep personal files and apps.
  • Re-run Windows Update after the repair and install only essential drivers.

Advanced Diagnostics

If the issue continues, use these pro-grade tools to pinpoint ExPool corruption sources.

Driver Verifier (Caution)

Driver Verifier stresses drivers and can intentionally trigger BSODs to expose faulty behavior. Use carefully.

Enable (recommended baseline):

  • Open an elevated Command Prompt and run:

verifier /standard /all

  • Reboot. Use the machine normally until it BSODs. After a crash, analyze the latest dump.
  • If you suspect a subset (e.g., network), selectively target drivers:

verifier /standard /driver <driver1.sys> <driver2.sys>

Recommended flags for pool issues (advanced):

  • Special pool
  • Force IRQL checking
  • Pool tracking
  • I/O verification
  • Deadlock detection
  • Security checks

To configure interactively:

  • Win+R → verifier → Create standard settings → Automatically select unsigned drivers or select drivers built for older versions of Windows, or pick specific drivers.

Disable Driver Verifier (if stuck in a boot loop):

  • Boot into Safe Mode, then run:

verifier /reset

  • Or restore from a recovery environment.

Notes:

  • Expect BSODs while Verifier is active; that’s by design.
  • Only enable on systems where you can afford downtime and have backups.

Event Viewer and Reliability Monitor

  • Event Viewer:
    • Windows Logs → System → Filter for Event ID 1001 (BugCheck) and related WER events.
    • Review correlated warnings/errors around the crash time (drivers starting/stopping, disk, or kernel-power events).
  • Reliability Monitor:
    • Search “Reliability Monitor” → View reliability history.
    • Inspect red X events around crash times for driver or application correlation.

Pool Tracking and PoolMon (Expert)

If you suspect pool leaks or corruption trends:

  • Install Windows Driver Kit (WDK) to get PoolMon (poolmon.exe).
  • Run elevated Command Prompt:

poolmon.exe -b

  • Sort by bytes; look for tags with suspicious growth or high allocation churn.
  • Map pool tags to drivers:
    • Check C:\Windows\System32\drivers or use:

findstr /m /l /s C:\Windows\System32\drivers*.sys

  • Once identified, update or remove the implicated driver.

Special Pool via GFlags (Advanced)

Enabling Special Pool can catch overruns/underruns:

  • Install GFlags (part of Debugging Tools).
  • Run GFlags GUI or command to enable Special Pool for a specific driver.
  • Test to reproduce; analyze the resulting crash dump.
See also  UNEXPECTED_STORE_EXCEPTION BSOD: Disk Firmware and Power Plans Explained

Hardware Stress Isolation

  • Memory: Use MemTest86 multiple passes; replace suspected modules.
  • CPU: Stress with Prime95 (Small FFTs) while monitoring temps.
  • GPU: Stress with FurMark or 3DMark; watch for instability.
  • If system is only unstable under one type of load (e.g., network), swap NIC/disable Wi‑Fi or test via USB Ethernet.

When to Seek Professional Help

Consider professional repair or hardware replacement when:

  • MemTest86 or Windows Memory Diagnostic consistently shows errors.
  • BSODs persist after clean OS repair, with minimal drivers and no third-party software.
  • You find repeating errors pointing to the motherboard, RAM slots, or power delivery.
  • SSD SMART data indicates pending failure, or firmware updates don’t stabilize the drive.
  • You’re uncomfortable running Driver Verifier, WinDbg, or firmware updates.

A qualified technician can perform board-level diagnostics, swap components for A/B testing, and validate stability under controlled conditions.


Prevention Tips

  • Keep drivers current, especially chipset, storage, GPU, and network. Favor OEM/vendor sites over generic updates.
  • Apply Windows Updates regularly but avoid unnecessary beta/preview channels on production systems.
  • Maintain a stable BIOS/UEFI:
    • Update to the latest stable release.
    • Avoid aggressive overclocks; validate with memory tests.
  • Practice driver hygiene:
    • Avoid stacking multiple security suites or redundant filter drivers (VPN + multiple endpoint tools).
    • Fully uninstall obsolete hardware/software drivers using vendor cleanup tools when replacing components.
  • Use quality hardware and verified firmware:
    • Match RAM kits by model; avoid mixing modules.
    • Keep SSD firmware updated; monitor health.
  • Implement regular backups (system image + file backup) so you can roll back quickly after major changes.
  • Add changes incrementally:
    • After installing a driver or firmware, test stability before adding more variables.

Conclusion

The DRIVER_CORRUPTED_EXPOOL BSOD signals kernel pool corruption typically caused by faulty or incompatible drivers, memory instability, or problematic firmware. By following a structured approach—safe boot, backups, health checks, targeted driver updates, and minidump analysis with tools like BlueScreenView or WinDbg—you can usually identify and fix the root cause. For stubborn cases, Driver Verifier, PoolMon, and hardware diagnostics uncover the deeper issues. Most BSODs, including Driver Corrupted ExPool, are fixable with patience and methodical troubleshooting.

Stay calm, proceed step by step, and you’ll get your Windows 10/11 system stable again.


FAQ Section

Can I keep using my PC after a DRIVER_CORRUPTED_EXPOOL BSOD?

You can often reboot and continue, but it’s not recommended to ignore this. Pool corruption indicates a systemic issue (usually a driver) that can cause repeated crashes and data loss. Follow the troubleshooting steps to resolve it.

Does this error mean my hardware is failing?

Not necessarily. Most cases are due to drivers or software (security suites, VPNs, filters). However, unstable RAM or storage issues can mimic driver failures. Run memory tests and disk checks to rule out hardware.

How do I find which driver caused the crash?

Enable minidumps and use BlueScreenView for a quick clue, or WinDbg for deep analysis using !analyze -v and lmvm. For persistent, elusive issues, enable Driver Verifier to stress and identify faulty drivers.

Will reinstalling Windows fix DRIVER_CORRUPTED_EXPOOL?

A clean or in-place repair install can fix OS-level corruption and replace damaged system files. If a third-party driver or unstable hardware is the cause, the problem may return until that component is updated, removed, or replaced.

Is overclocking related to ExPool corruption?

Yes. Overclocked RAM (XMP/EXPO) and aggressive CPU/GPU overclocks can cause subtle memory errors that surface as pool corruption. Revert to stock settings during troubleshooting and stability testing.

About the author

Jonathan Dudamel

Jonathan Dudamel

I'm Jonathan Dudamel, an experienced IT specialist and network engineer passionate about all things Windows. I have deep expertise in Microsoft project management, virtualization (VMware ESXi and Hyper-V), and Microsoft’s hybrid platform. I'm also skilled with Microsoft O365, Azure ADDS, and Windows Server environments from 2003 through 2022.

My strengths include Microsoft network infrastructure, VMware platforms, CMMS, ERP systems, and server administration (2016/2022).