IRQL_NOT_LESS_OR_EQUAL & DRIVER_IRQL_NOT_LESS_OR_EQUAL Blue Screen: Complete Fix Guide (Stop Codes 0x0000000A & 0x000000D1)
Fix IRQL_NOT_LESS_OR_EQUAL (0x0000000A) and DRIVER_IRQL_NOT_LESS_OR_EQUAL (0x000000D1) BSODs with step-by-step driver, RAM, and Windows troubleshooting.
- IRQL_NOT_LESS_OR_EQUAL (0x0000000A) is triggered when a kernel-mode process or driver attempts to access pageable memory at an interrupt request level (IRQL) that is too high — most commonly caused by a buggy or outdated device driver.
- DRIVER_IRQL_NOT_LESS_OR_EQUAL (0x000000D1) is the driver-specific variant; the 'What Failed' field in the BSOD screen names the offending .sys file (e.g., nvlddmkm.sys, tcpip.sys, netio.sys, ndis.sys, usbxhci.sys).
- Common root causes include corrupt or incompatible drivers (GPU, NIC, USB, storage), faulty or overclocked RAM, third-party antivirus/VPN kernel filters (fwpkclnt.sys, covpnv64.sys), and Windows Update remnants.
- Quick fix path: note the .sys file name from the BSOD, boot into Safe Mode, uninstall or roll back that driver, run Windows Memory Diagnostic, then verify system files with SFC and DISM.
- If no .sys file is named and ntoskrnl.exe or ntkrnlmp.exe is listed, suspect RAM defects, overclocking, or a recent Windows Update as the cause.
| Method | When to Use | Estimated Time | Risk Level |
|---|---|---|---|
| Roll back or uninstall the offending driver | BSOD names a specific .sys file (nvlddmkm.sys, netio.sys, etc.) | 5–15 min | Low |
| Update all device drivers via Device Manager / OEM site | Outdated drivers suspected; no specific file named | 15–30 min | Low |
| Windows Memory Diagnostic / MemTest86 | ntoskrnl.exe or ntkrnlmp.exe listed; RAM overclocked | 30 min – 8 hrs | None |
| SFC /scannow + DISM /RestoreHealth | Corrupt system files after failed Windows Update | 20–40 min | Very Low |
| Disable or uninstall third-party security software / VPN | fwpkclnt.sys, covpnv64.sys, fbnetflt.sys, ipeaklwf.sys listed | 5–10 min | Low |
| Disable overclocking in BIOS/UEFI | System is overclocked; crashes under gaming load | 5 min | None |
| Clean Windows reinstall | All other methods failed; crashes persist after driver wipe | 1–3 hrs | High — backup first |
Understanding IRQL_NOT_LESS_OR_EQUAL and DRIVER_IRQL_NOT_LESS_OR_EQUAL
Windows uses a priority system called Interrupt Request Levels (IRQLs) to manage hardware and software interrupt handling. Kernel-mode code running at a high IRQL cannot safely touch pageable memory — memory that may have been swapped out to disk. When a driver or kernel component tries to do exactly that, the kernel has no choice but to issue a Bug Check (Blue Screen of Death) to prevent data corruption.
- Stop Code 0x0000000A — IRQL_NOT_LESS_OR_EQUAL: A kernel-mode component referenced memory at an IRQL that was too high. Often tied to ntoskrnl.exe, ntkrnlmp.exe, or a named driver.
- Stop Code 0x000000D1 — DRIVER_IRQL_NOT_LESS_OR_EQUAL: The driver-specific version. Windows almost always names the guilty .sys file in the 'What failed:' line.
Reading the BSOD Screen
A typical crash screen looks like this:
Your PC ran into a problem and needs to restart.
STOP CODE: DRIVER_IRQL_NOT_LESS_OR_EQUAL
What failed: nvlddmkm.sys
The four parameters in the kernel dump (visible in WinDbg) are:
- Parameter 1: Memory address that was referenced
- Parameter 2: IRQL at the time of the access
- Parameter 3: 0 = read violation, 1 = write violation, 8 = execute violation
- Parameter 4: Address of the instruction that caused the fault
Step 1: Identify the Offending Driver from the Crash Dump
Before fixing anything, pinpoint the cause.
Option A — Read the BSOD screen directly: The 'What failed:' line names the .sys file.
Option B — Analyze the minidump with WinDbg:
- Open WinDbg (install from the Microsoft Store or Windows SDK).
- Go to File → Open Crash Dump and navigate to
C:\Windows\Minidump\. - Run the command:
!analyze -v - Look for the
MODULE_NAMEandIMAGE_NAMEfields.
Option C — Use WhoCrashed (free tool): Download from resplendence.com, run it, and it parses all minidumps and names the guilty driver in plain English.
Common offenders and their associated components:
| .sys File | Associated Component | Fix |
|---|---|---|
| nvlddmkm.sys | NVIDIA GPU driver | Update/DDU clean reinstall GPU driver |
| amdkmdag.sys / amdppm.sys | AMD GPU / CPU power driver | Update AMD driver or disable Cool'n'Quiet |
| igdkmd64.sys | Intel integrated GPU | Update Intel graphics driver |
| netio.sys / tcpip.sys / ndis.sys | Windows network stack | Disable NIC offload features, update NIC driver |
| netwtw04.sys / netwtw10.sys / rtwlanu.sys / rt640x64.sys | Wi-Fi adapter | Update Wi-Fi driver |
| usbxhci.sys / usbport.sys | USB 3.x controller | Update chipset/USB driver, disable USB selective suspend |
| stornvme.sys / nvme.sys / iastora.sys / storport.sys | NVMe/SATA storage | Update storage controller driver or firmware |
| fwpkclnt.sys / covpnv64.sys / fbnetflt.sys / ipeaklwf.sys | VPN or firewall kernel filter | Uninstall VPN/antivirus software |
| dxgkrnl.sys / dxgmms2.sys | DirectX graphics kernel | Update GPU driver, disable hardware-accelerated GPU scheduling |
| wdf01000.sys | Windows Driver Framework | Run SFC; may indicate a corrupt driver |
| kbdclass.sys | Keyboard class driver | Disconnect and re-add HID devices |
| ntoskrnl.exe / ntkrnlmp.exe | Windows kernel itself | Suspect RAM, overclocking, or Windows corruption |
Step 2: Boot into Safe Mode
If the system crashes at startup, Safe Mode loads only essential drivers.
Method 1 — From the login screen: Hold Shift and click Restart. Go to Troubleshoot → Advanced Options → Startup Settings → Restart → press 4 (Safe Mode) or 5 (Safe Mode with Networking).
Method 2 — Interrupt the boot 3 times: Let Windows fail to boot three times in a row. On the third restart it enters Windows Recovery Environment (WinRE) automatically, from which you can access Startup Settings.
Method 3 — Via msconfig (if you can still boot):
- Press Win + R, type
msconfig, press Enter. - Go to the Boot tab, check Safe boot → Minimal, click OK, restart.
Step 3: Uninstall, Roll Back, or Update the Faulty Driver
To roll back a driver:
- Press Win + X → Device Manager.
- Expand the category (Display adapters, Network adapters, etc.).
- Right-click the device → Properties → Driver tab → Roll Back Driver.
To uninstall and clean-reinstall a GPU driver (recommended for nvlddmkm.sys, amdkmdag.sys, igdkmd64.sys):
- Download Display Driver Uninstaller (DDU) from guru3d.com.
- Boot into Safe Mode.
- Run DDU → Clean and Restart.
- Boot normally and install the latest driver from NVIDIA, AMD, or Intel's website.
To update a network or chipset driver:
- Visit your motherboard manufacturer's support page (ASUS, MSI, Gigabyte, Dell, HP, Lenovo) and download the latest driver packages.
- Alternatively, right-click the device in Device Manager → Update driver → Search automatically.
Step 4: Check RAM with Windows Memory Diagnostic
Faulty or incorrectly seated RAM is a leading cause of IRQL_NOT_LESS_OR_EQUAL when ntoskrnl.exe is the named module.
Quick test (Windows built-in):
- Press Win + R, type
mdsched.exe, press Enter. - Choose Restart now and check for problems.
- The system reboots and runs two passes. Results appear in Event Viewer under Windows Logs → System (search for MemoryDiagnostics-Results).
Thorough test (MemTest86):
- Download MemTest86 from memtest86.com.
- Create a bootable USB drive using their installer.
- Boot from USB and run at least 2 full passes (one pass per 1 GB RAM takes roughly 5 minutes).
- Any errors at all indicate bad RAM — reseat, swap, or replace sticks.
If you've overclocked RAM (XMP/EXPO profiles):
- Enter BIOS/UEFI and set memory to stock JEDEC speeds temporarily.
- If crashes stop, your XMP profile is unstable at those settings — lower the frequency or increase DRAM voltage slightly.
Step 5: Repair Windows System Files
A corrupted Windows installation or a bad Windows Update can produce IRQL crashes attributed to ntoskrnl.exe, ntkrnlmp.exe, or ntfs.sys.
Run the commands below in an elevated Command Prompt:
:: Step 1: Scan and repair protected system files
sfc /scannow
:: Step 2: If SFC reports errors it cannot fix, use DISM to restore the component store
DISM /Online /Cleanup-Image /CheckHealth
DISM /Online /Cleanup-Image /ScanHealth
DISM /Online /Cleanup-Image /RestoreHealth
:: Step 3: Run SFC again after DISM completes
sfc /scannow
Restart after the process completes.
Step 6: Disable Problematic Network Features (for netio.sys / tcpip.sys)
If the crash is linked to the network stack, TCP/IP offloading features can sometimes trigger the bug:
:: Disable TCP checksum offload and large send offload on all adapters
netsh int tcp set global chimney=disabled
netsh int tcp set global autotuninglevel=disabled
netsh int tcp set global rss=disabled
:: Reset Winsock if network errors persist
netsh winsock reset
netsh int ip reset
Also open Device Manager → Network Adapters → your adapter → Properties → Advanced tab. Disable Large Send Offload (IPv4 and IPv6), TCP Checksum Offload, and UDP Checksum Offload.
Step 7: Check for Overclocking and Thermal Issues
Unstable overclocks on CPU, GPU, or RAM frequently cause IRQL crashes under load — especially when gaming (Fortnite, Valorant, etc.).
- In BIOS/UEFI: Reset all settings to Load Optimized Defaults.
- Use HWiNFO64 or Core Temp to monitor CPU/GPU temperatures. Throttling above 95°C (CPU) or 85°C (GPU) under load is a warning sign.
- Reapply thermal paste if the CPU is several years old and temperatures are high.
- For VirtualBox IRQL crashes: ensure VT-x/AMD-V is enabled in BIOS; update VirtualBox to the latest stable release.
Step 8: Update BIOS/UEFI Firmware
An outdated BIOS can cause hardware-level incompatibilities that manifest as IRQL BSODs, especially after hardware upgrades.
- Identify your motherboard model (run
msinfo32→ System Model). - Visit the manufacturer's support site and download the latest BIOS.
- Follow the manufacturer's exact flashing instructions — do not power off during the update.
Step 9: If All Else Fails — In-Place Upgrade or Clean Install
An in-place upgrade reinstalls Windows while preserving files and applications:
- Download the Media Creation Tool from microsoft.com/software-download/windows11.
- Run it on the affected PC and choose Upgrade this PC now.
- Select Keep personal files and apps.
This replaces system files without a full wipe and often resolves deep-seated driver corruption.
Frequently Asked Questions
# ============================================================
# IRQL_NOT_LESS_OR_EQUAL / DRIVER_IRQL_NOT_LESS_OR_EQUAL
# Diagnostic & Fix Script
# Run in an elevated (Administrator) PowerShell session
# ============================================================
Write-Host "=== Step 1: Check for recent BSODs in Event Log ==" -ForegroundColor Cyan
Get-WinEvent -FilterHashtable @{LogName='System'; Id=1001} -MaxEvents 10 |
Select-Object TimeCreated, Message | Format-List
Write-Host "`n=== Step 2: List all minidump files ==" -ForegroundColor Cyan
$minidumpPath = "$env:SystemRoot\Minidump"
if (Test-Path $minidumpPath) {
Get-ChildItem -Path $minidumpPath -Filter "*.dmp" | Sort-Object LastWriteTime -Descending |
Select-Object Name, LastWriteTime, @{Name='Size_KB';Expression={[math]::Round($_.Length/1KB,1)}}
} else {
Write-Host "No minidump folder found. Enable small memory dump in System Properties." -ForegroundColor Yellow
}
Write-Host "`n=== Step 3: Scan and repair system files ==" -ForegroundColor Cyan
Write-Host "Running SFC (this may take 10-20 minutes)..."
Start-Process -FilePath "sfc.exe" -ArgumentList "/scannow" -Wait -NoNewWindow
Write-Host "`n=== Step 4: DISM component store repair ==" -ForegroundColor Cyan
DISM /Online /Cleanup-Image /RestoreHealth
Write-Host "`n=== Step 5: Check disk for errors ==" -ForegroundColor Cyan
# Schedule chkdsk on next reboot for the system drive
chkdsk C: /f /r /x
Write-Host "`n=== Step 6: Disable TCP offloading (helps netio.sys / tcpip.sys crashes) ==" -ForegroundColor Cyan
netsh int tcp set global chimney=disabled
netsh int tcp set global autotuninglevel=disabled
netsh int tcp set global rss=disabled
Write-Host "TCP offload features disabled."
Write-Host "`n=== Step 7: List third-party kernel drivers (non-Microsoft) ==" -ForegroundColor Cyan
# These are candidates to investigate if one matches your BSOD .sys file
Get-WmiObject Win32_SystemDriver |
Where-Object { $_.PathName -notmatch 'system32\\drivers' -or $_.Manufacturer -notmatch 'Microsoft' } |
Select-Object Name, State, PathName | Sort-Object Name | Format-Table -AutoSize
Write-Host "`n=== Step 8: Show recently installed drivers (last 30 days) ==" -ForegroundColor Cyan
$cutoff = (Get-Date).AddDays(-30)
Get-WindowsDriver -Online -All |
Where-Object { $_.Date -gt $cutoff } |
Select-Object Driver, ClassName, ProviderName, Date, Version |
Sort-Object Date -Descending | Format-Table -AutoSize
Write-Host "`n=== Step 9: Launch Windows Memory Diagnostic ==" -ForegroundColor Cyan
Write-Host "Scheduling Windows Memory Diagnostic on next reboot..."
mdsched.exe
Write-Host "`n=== Diagnostic complete. Review output above. ==" -ForegroundColor Green
Write-Host "Next steps:"
Write-Host " 1. Open the newest .dmp file in WinDbg and run: !analyze -v"
Write-Host " 2. Match the failing .sys file to the fix table in the guide."
Write-Host " 3. If RAM errors found, reseat or replace faulty sticks."
Write-Host " 4. Use DDU in Safe Mode to clean-reinstall GPU drivers if nvlddmkm.sys / amdkmdag.sys listed."
Error Medic Editorial
The Error Medic Editorial team consists of senior DevOps engineers, Windows kernel enthusiasts, and SRE professionals with a combined 40+ years of experience diagnosing Blue Screen of Death errors, kernel panics, and system instability across enterprise and consumer environments. Every fix recommendation is validated against Microsoft's official Bug Check documentation, WinDbg analysis, and community-sourced crash dump patterns from Windows 7 through Windows 11.
Sources
- https://learn.microsoft.com/en-us/windows-hardware/drivers/debugger/bug-check-0xa--irql-not-less-or-equal
- https://learn.microsoft.com/en-us/windows-hardware/drivers/debugger/bug-check-0xd1--driver-irql-not-less-or-equal
- https://learn.microsoft.com/en-us/windows-hardware/drivers/debugger/using-the--analyze-extension
- https://support.microsoft.com/en-us/windows/windows-stop-code-errors-troubleshoot-blue-screen-errors-5c4bb20d-641a-4cfe-a5a2-a8dc5c4a4c95
- https://stackoverflow.com/questions/tagged/bsod+windows-driver
- https://github.com/MicrosoftDocs/windows-driver-docs/blob/staging/windows-driver-docs-pr/debugger/bug-check-0xd1--driver-irql-not-less-or-equal.md
- https://www.memtest86.com/
- https://www.guru3d.com/files-details/display-driver-uninstaller-download.html