Windows Stop Code (Blue Screen) Fix Guide: CRITICAL_PROCESS_DIED, MEMORY_MANAGEMENT, 0xC000021A & More
Fix Windows stop code blue screen errors including 0xC000021A, MEMORY_MANAGEMENT, CRITICAL_PROCESS_DIED & more. Step-by-step repair commands included.
- Windows stop codes (BSODs) are caused by driver corruption, RAM faults, disk errors, system file corruption, or failed Windows Updates — each code points to a specific subsystem failure.
- The most common stop codes — 0xC000021A, CRITICAL_PROCESS_DIED, MEMORY_MANAGEMENT, INACCESSIBLE_BOOT_DEVICE, and KERNEL_SECURITY_CHECK_FAILURE — each have distinct root causes and targeted fixes.
- Quick fix path: Boot into Safe Mode or WinRE, run 'sfc /scannow' and 'DISM /Online /Cleanup-Image /RestoreHealth', check RAM with Windows Memory Diagnostic, and roll back recent drivers or updates if the BSOD started after a change.
| Method | When to Use | Time | Risk |
|---|---|---|---|
| SFC + DISM scan | System file corruption, stop codes after update | 15–30 min | Low |
| Windows Memory Diagnostic / MemTest86 | MEMORY_MANAGEMENT, PFN_LIST_CORRUPT, BAD_POOL_CALLER | 30 min – 8 hrs | Low |
| Driver rollback / uninstall | TDR_FAILURE, nvlddmkm.sys, netio.sys, stop code after driver install | 5–15 min | Low |
| Startup Repair (WinRE) | 0xC000021A, INACCESSIBLE_BOOT_DEVICE, UNMOUNTABLE_BOOT_VOLUME | 10–20 min | Low |
| CHKDSK /f /r | NTFS_FILE_SYSTEM, ntfs.sys, disk I/O stop codes | 30–120 min | Low–Medium |
| System Restore | Stop code appeared after specific software/update | 10–20 min | Low–Medium |
| Uninstall recent Windows Update | Stop code after update, PROCESS1_INITIALIZATION_FAILED | 5–10 min | Low |
| Bootrec / BCD rebuild | 0x0000007B, INACCESSIBLE_BOOT_DEVICE on boot | 10–20 min | Medium |
| Clean reinstall Windows | All else fails, recurring stop codes, severe corruption | 1–2 hrs | High (data loss risk) |
Understanding Windows Stop Codes
A Windows stop code — colloquially called a Blue Screen of Death (BSOD) — is Windows' last-resort mechanism for preventing hardware or OS damage when a fatal, unrecoverable error is detected. The screen displays a QR code, a frowning emoji, a plain-English error name (e.g., CRITICAL_PROCESS_DIED), and a hex stop code (e.g., 0x000000EF). These codes map directly to a specific system component that failed.
Common Stop Codes and Their Meanings
0xC000021A / c000021a / 000021a / 00021a / 021a / 21a — All variant spellings of the same error: a fatal system error in the Windows subsystem (winlogon.exe or csrss.exe crashed). Often triggered by a bad Windows Update, corrupt system files, or a third-party security product interfering with system processes.
CRITICAL_PROCESS_DIED (0x000000EF) — A critical Windows process (e.g., System, smss.exe) terminated unexpectedly. Caused by driver bugs, RAM errors, or file system corruption.
MEMORY_MANAGEMENT (0x0000001A) — A severe error in Windows' memory manager. Usually faulty RAM, incorrect RAM timings in BIOS, or a driver writing to memory it doesn't own.
KERNEL_SECURITY_CHECK_FAILURE (0x00000139) — A data structure integrity check failed in kernel mode. Common after driver updates, RAM failures, or malware.
INACCESSIBLE_BOOT_DEVICE (0x0000007B) — Windows cannot access the volume containing the OS during boot. Triggered by SATA mode changes (AHCI vs IDE), corrupted boot sector, missing storage drivers, or BitLocker issues.
DRIVER_POWER_STATE_FAILURE (0x0000009F) — A driver fails to handle power transitions (sleep/wake). Almost always a third-party driver bug.
DPC_WATCHDOG_VIOLATION (0x00000133) — A deferred procedure call ran too long. Usually caused by an incompatible SSD firmware, outdated storage driver, or GPU driver.
BAD_POOL_CALLER (0x000000C2) — A process made an invalid pool memory request. Typically a faulty or incompatible driver.
PFN_LIST_CORRUPT (0x0000004E) — The page frame number list is corrupted. Almost always bad RAM or a failing hard drive.
TDR_FAILURE / nvlddmkm.sys — GPU driver timed out and failed to recover. Update or clean-install the NVIDIA/AMD driver.
NTFS_FILE_SYSTEM / ntfs.sys — NTFS file system driver encountered an unrecoverable error. Disk corruption or failing drive.
NMI_HARDWARE_FAILURE — Non-maskable interrupt from hardware. Indicates serious hardware fault (bad RAM, PSU, or motherboard).
CLOCK_WATCHDOG_TIMEOUT — A CPU core stopped responding. Overclocking instability, cooling failure, or CPU/motherboard fault.
WDF_VIOLATION / CACHE_MANAGER / REFERENCE_BY_POINTER / WORKER_INVALID — Driver framework or kernel worker thread errors. Usually a specific buggy driver.
Step 1: Capture the Stop Code
Before fixing, identify the exact stop code:
- If the PC reboots instantly, open System Properties > Advanced > Startup and Recovery > Settings and uncheck "Automatically restart" so you can read the screen.
- After a BSOD, open Event Viewer > Windows Logs > System and look for critical errors around the crash time.
- Use WinDbg or WhoCrashed to analyze dump files in
C:\Windows\Minidump\.
Step 2: Boot into Safe Mode or WinRE
If Windows won't start, access the Windows Recovery Environment (WinRE):
- Force-interrupt boot three times (hold power button during the Windows logo) to trigger Automatic Repair, then choose Advanced Options > Troubleshoot > Advanced Options.
- From there you can access Startup Repair, Command Prompt, System Restore, or Uninstall Updates.
For Safe Mode: Advanced Options > Startup Settings > Restart > press 4 or F4.
Step 3: Run SFC and DISM
System file corruption causes dozens of different stop codes. Run these commands from an elevated Command Prompt or WinRE Command Prompt:
DISM /Online /Cleanup-Image /RestoreHealth
sfc /scannow
Always run DISM first so SFC has good files to draw from. Reboot after completion.
Step 4: Check and Repair the Disk
For NTFS_FILE_SYSTEM, INACCESSIBLE_BOOT_DEVICE, UNMOUNTABLE_BOOT_VOLUME:
chkdsk C: /f /r /x
If you cannot run this from Windows, use WinRE Command Prompt and replace C: with the actual Windows drive letter (may appear as D: in WinRE).
Step 5: Fix the Boot Record (0xC000021A / 0x0000007B)
From WinRE Command Prompt:
bootrec /fixmbr
bootrec /fixboot
bootrec /scanos
bootrec /rebuildbcd
If bootrec /fixboot returns "Access is denied", run:
bcdboot C:\Windows /s C: /f ALL
Step 6: Test RAM
For MEMORY_MANAGEMENT, BAD_POOL_CALLER, PFN_LIST_CORRUPT, NMI_HARDWARE_FAILURE:
- Windows Memory Diagnostic: Search "mdsched.exe" > Restart now and check for problems.
- For thorough testing, use MemTest86 (bootable USB, run overnight for 2+ passes).
- If errors are found, reseat RAM sticks, test one at a time, and replace faulty modules.
- Also check RAM XMP/EXPO profile settings in BIOS — overly aggressive timings can cause instability.
Step 7: Roll Back or Uninstall Problematic Drivers
For TDR_FAILURE, nvlddmkm.sys, netio.sys, DRIVER_POWER_STATE_FAILURE:
- Boot into Safe Mode.
- Open Device Manager, right-click the suspected device (GPU, NIC, etc.).
- Choose Properties > Driver > Roll Back Driver, or uninstall and reinstall a clean driver version.
- For NVIDIA BSODs: use DDU (Display Driver Uninstaller) in Safe Mode before reinstalling.
Step 8: Uninstall Recent Windows Updates
For stop codes appearing only after Windows Update:
- Settings > Windows Update > Update History > Uninstall Updates
- Or from WinRE: Advanced Options > Uninstall Updates > Uninstall latest quality/feature update
Step 9: Use System Restore
If a restore point exists from before the BSOD started:
- WinRE > Advanced Options > System Restore
- Choose a restore point predating the issue.
Step 10: Nuclear Option — In-Place Upgrade or Clean Install
If all else fails, perform a Windows 11/10 in-place upgrade repair (keeps files and apps) by booting from Windows installation media and choosing "Upgrade" while running from within Windows. As a last resort, perform a clean install.
Special Cases
0xC000021A after a Windows Update: This is extremely common. Microsoft has released patches for several botched updates that caused this. First try uninstalling the latest update via WinRE. If that fails, run sfc /scannow and DISM from WinRE Command Prompt.
CLOCK_WATCHDOG_TIMEOUT: Disable any CPU/RAM overclocking. Load BIOS defaults. Check CPU temperatures with HWMonitor.
PROCESS1_INITIALIZATION_FAILED: Often accompanies 0xC000021A. The same SFC/DISM/bootrec sequence applies.
ATTEMPTED_EXECUTE_OF_NOEXECUTE_MEMORY: Usually a driver trying to execute code from a non-executable memory region. Update all drivers and run sfc /scannow.
FAULTY_HARDWARE_CORRUPTED_PAGE: Hardware-level memory issue. Test RAM and check disk health with wmic diskdrive get status or CrystalDiskInfo.
Frequently Asked Questions
# ============================================================
# WINDOWS STOP CODE DIAGNOSTIC & REPAIR SCRIPT
# Run in an elevated Command Prompt or WinRE Command Prompt
# ============================================================
# --- STEP 1: Repair Windows image and system files ---
DISM /Online /Cleanup-Image /CheckHealth
DISM /Online /Cleanup-Image /ScanHealth
DISM /Online /Cleanup-Image /RestoreHealth
sfc /scannow
# --- STEP 2: Check disk for errors (schedule for next reboot if locked) ---
chkdsk C: /f /r /x
# If the drive is locked, type Y to schedule on next boot
# --- STEP 3: Check disk S.M.A.R.T. status ---
wmic diskdrive get model,status
# --- STEP 4: Rebuild Boot Configuration Data (for boot-loop stop codes) ---
# Run from WinRE Command Prompt:
bootrec /fixmbr
bootrec /fixboot
bootrec /scanos
bootrec /rebuildbcd
# If bootrec /fixboot gives "Access is Denied":
bcdboot C:\Windows /s C: /f ALL
# --- STEP 5: View recent BSODs via Event Viewer (PowerShell) ---
Get-EventLog -LogName System -EntryType Error -Newest 20 | Where-Object {$_.Source -like "*Bugcheck*" -or $_.Source -like "*Kernel*"} | Format-List TimeGenerated, Message
# --- STEP 6: List minidump files for WinDbg / WhoCrashed analysis ---
dir C:\Windows\Minidump\
# --- STEP 7: Disable automatic restart on BSOD (so you can read the code) ---
wmic recoveros set AutoReboot = False
# --- STEP 8: Scan for malware in Safe Mode (Windows Defender) ---
"C:\Program Files\Windows Defender\MpCmdRun.exe" -Scan -ScanType 2
# --- STEP 9: Check RAM via Windows Memory Diagnostic ---
mdsched.exe
# (Will prompt to restart and test memory)
# --- STEP 10: Roll back a specific Windows Update (replace KB number) ---
wusa /uninstall /kb:5034441 /quiet /norestart
# --- STEP 11: Enable verbose BSOD logging ---
reg add "HKLM\SYSTEM\CurrentControlSet\Control\CrashControl" /v CrashDumpEnabled /t REG_DWORD /d 2 /f
# 2 = kernel memory dump, 3 = complete dump, 1 = small memory dump
# --- STEP 12: Check driver verifier (advanced -- use with caution) ---
# Enable verifier to catch bad drivers (will cause BSOD if bad driver found):
verifier /standard /all
# Disable after testing:
verifier /reset
# --- STEP 13: Export system info for further diagnosis ---
msinfo32 /report C:\msinfo_report.txt
dxdiag /t C:\dxdiag_report.txtError Medic Editorial
The Error Medic Editorial team is composed of senior DevOps engineers, SRE practitioners, and Windows system administrators with a combined 40+ years of experience diagnosing OS-level failures, kernel panics, and blue screen errors across enterprise and consumer environments. Our guides are built from real incident post-mortems, Microsoft documentation, and hands-on lab testing. We publish actionable, command-first troubleshooting content for developers, IT professionals, and power users who need reliable fixes fast.
Sources
- https://learn.microsoft.com/en-us/windows-hardware/drivers/debugger/bug-check-code-reference2
- https://learn.microsoft.com/en-us/troubleshoot/windows-client/performance/stop-error-or-blue-screen-error-troubleshooting
- https://support.microsoft.com/en-us/windows/fix-blue-screen-errors-in-windows-10-and-11-2ab849e2-7a3e-4fdf-bcca-8a0b18f06e5e
- https://learn.microsoft.com/en-us/windows-hardware/drivers/debugger/bug-check-0x1a--memory-management
- https://learn.microsoft.com/en-us/windows-hardware/drivers/debugger/bug-check-0xc000021a--status-system-process-terminated
- https://answers.microsoft.com/en-us/windows/forum/all/blue-screen-stop-code-0xc000021a/
- https://stackoverflow.com/questions/tagged/windows-bsod