Error Medic

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.

Last updated:
Last verified:
2,657 words
Key Takeaways
  • 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.
Fix Approaches Compared
MethodWhen to UseEstimated TimeRisk Level
Roll back or uninstall the offending driverBSOD names a specific .sys file (nvlddmkm.sys, netio.sys, etc.)5–15 minLow
Update all device drivers via Device Manager / OEM siteOutdated drivers suspected; no specific file named15–30 minLow
Windows Memory Diagnostic / MemTest86ntoskrnl.exe or ntkrnlmp.exe listed; RAM overclocked30 min – 8 hrsNone
SFC /scannow + DISM /RestoreHealthCorrupt system files after failed Windows Update20–40 minVery Low
Disable or uninstall third-party security software / VPNfwpkclnt.sys, covpnv64.sys, fbnetflt.sys, ipeaklwf.sys listed5–10 minLow
Disable overclocking in BIOS/UEFISystem is overclocked; crashes under gaming load5 minNone
Clean Windows reinstallAll other methods failed; crashes persist after driver wipe1–3 hrsHigh — 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:

  1. Open WinDbg (install from the Microsoft Store or Windows SDK).
  2. Go to File → Open Crash Dump and navigate to C:\Windows\Minidump\.
  3. Run the command: !analyze -v
  4. Look for the MODULE_NAME and IMAGE_NAME fields.

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):

  1. Press Win + R, type msconfig, press Enter.
  2. 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:

  1. Press Win + X → Device Manager.
  2. Expand the category (Display adapters, Network adapters, etc.).
  3. 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):

  1. Download Display Driver Uninstaller (DDU) from guru3d.com.
  2. Boot into Safe Mode.
  3. Run DDU → Clean and Restart.
  4. 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):

  1. Press Win + R, type mdsched.exe, press Enter.
  2. Choose Restart now and check for problems.
  3. The system reboots and runs two passes. Results appear in Event Viewer under Windows Logs → System (search for MemoryDiagnostics-Results).

Thorough test (MemTest86):

  1. Download MemTest86 from memtest86.com.
  2. Create a bootable USB drive using their installer.
  3. Boot from USB and run at least 2 full passes (one pass per 1 GB RAM takes roughly 5 minutes).
  4. 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.

  1. Identify your motherboard model (run msinfo32 → System Model).
  2. Visit the manufacturer's support site and download the latest BIOS.
  3. 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:

  1. Download the Media Creation Tool from microsoft.com/software-download/windows11.
  2. Run it on the affected PC and choose Upgrade this PC now.
  3. Select Keep personal files and apps.

This replaces system files without a full wipe and often resolves deep-seated driver corruption.

Frequently Asked Questions

powershell
# ============================================================
# 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."
E

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

Related Articles in Other Irql_not_less_or_equal

Explore More windows Guides