Error Medic

IRQL NOT LESS OR EQUAL: Complete Troubleshooting Guide to Fix This BSOD Error

Fix the IRQL_NOT_LESS_OR_EQUAL BSOD on Windows. Step-by-step guide covering driver updates, memory checks, and registry fixes to resolve stop code 0x0000000A.

Last updated:
Last verified:
2,270 words
Key Takeaways
  • Root cause 1: A kernel-mode driver attempted to access pageable memory at an IRQL that was too high, typically caused by a buggy or outdated device driver (e.g., network adapter, GPU, or antivirus kernel components).
  • Root cause 2: Faulty or incompatible RAM (bad memory modules, overclocking instability, or incorrect XMP/EXPO profiles) triggers invalid memory address access at elevated IRQL levels.
  • Root cause 3: Corrupted Windows system files or an incompatible third-party kernel driver (often installed silently by antivirus or VPN software) conflict with IRQL enforcement.
  • Quick fix summary: Update or roll back the offending driver identified in the minidump file, run Windows Memory Diagnostic or MemTest86 to rule out RAM issues, and use SFC /scannow plus DISM to repair corrupted system files.
Fix Approaches Compared
MethodWhen to UseTimeRisk
Update/Roll Back DriverMinidump points to a specific .sys file; crash started after driver update10-20 minLow
Windows Memory DiagnosticRandom BSODs with no consistent driver pattern; system is unstable20-60 minNone
MemTest86 (Bootable)Memory Diagnostic shows errors or you suspect intermittent RAM failure2-8 hrsNone
SFC /scannow + DISMMultiple system files corrupted after failed update or malware infection15-30 minLow
Disable Overclocking / Reset XMPBSOD occurs under load or after enabling XMP/EXPO RAM profile in BIOS5-10 minNone
Clean Boot / Uninstall Conflicting SoftwareCrash correlates with third-party antivirus, VPN, or virtualization driver15-30 minLow
Reinstall WindowsAll other methods fail; system is completely unstable1-3 hrsHigh (data loss risk)

Understanding the IRQL_NOT_LESS_OR_EQUAL Error

The IRQL_NOT_LESS_OR_EQUAL error (also known as stop code 0x0000000A) is one of the most common Blue Screen of Death (BSOD) errors in Windows. The exact error message you see on screen is:

Your PC ran into a problem and needs to restart.
Stop code: IRQL_NOT_LESS_OR_EQUAL

In Polish-language Windows installations, you may see:

Kod zatrzymania: DRIVER_IRQL_NOT_LESS_OR_EQUAL

The error means that a kernel-mode process or driver attempted to access a memory address that was pageable (or completely invalid) while operating at an elevated Interrupt Request Level (IRQL). Windows enforces that certain memory regions can only be accessed at IRQL levels of DISPATCH_LEVEL (2) or below. When a driver violates this rule, the kernel immediately triggers a bugcheck (BSOD) to prevent data corruption.


Step 1: Read the Minidump File

The most reliable way to diagnose this error is to analyze the Windows minidump file generated at the time of the crash.

Enable minidump creation (if not already enabled):

  1. Right-click This PC > Properties > Advanced system settings.
  2. Under Startup and Recovery, click Settings.
  3. Set Write debugging information to Small memory dump (256 KB).
  4. Ensure the dump file path is set to %SystemRoot%\Minidump.

Analyze the dump using WinDbg:

  1. Download and install the Windows Debugger (WinDbg) from the Microsoft Store or Windows SDK.
  2. Open WinDbg and go to File > Open Crash Dump.
  3. Navigate to C:\Windows\Minidump\ and open the most recent .dmp file.
  4. In the command window, type:
    !analyze -v
    
  5. Look for the IMAGE_NAME field — this tells you exactly which .sys driver caused the crash (e.g., nvlddmkm.sys for NVIDIA GPU, tcpip.sys for network stack, ntfs.sys for file system).

Quick alternative — WhoCrashed: Download WhoCrashed (free) from Resplendence Software. It reads minidumps automatically and provides a plain-English explanation of the crash, including the offending driver name.


Step 2: Update or Roll Back the Offending Driver

Once you identify the faulty driver:

If it's a third-party driver (GPU, NIC, audio):

  1. Press Win + X > Device Manager.
  2. Locate the device associated with the offending .sys file.
  3. Right-click > Update driver > Search automatically.
  4. If the crash started after a recent update, right-click > Properties > Driver tab > Roll Back Driver.

Common offending drivers and their devices:

  • nvlddmkm.sys → NVIDIA display driver
  • atikmpag.sys / atikmdag.sys → AMD GPU driver
  • e1g6032e.sys → Intel network adapter
  • MpKsl*.sys → Windows Defender kernel driver
  • ndis.sys → Network Driver Interface Specification (Windows networking stack)

For NVIDIA GPU drivers specifically: Use DDU (Display Driver Uninstaller) in Safe Mode to fully remove the existing driver before installing a fresh copy from nvidia.com.


Step 3: Run Windows Memory Diagnostic

Faulty RAM is a leading cause of IRQL_NOT_LESS_OR_EQUAL errors.

  1. Press Win + R, type mdsched.exe, and press Enter.
  2. Choose Restart now and check for problems.
  3. Windows will run two passes by default. Press F1 to access options and set Extended mode for more thorough testing.
  4. After reboot, check Event Viewer (Win + X > Event Viewer > Windows Logs > System) for entries from source MemoryDiagnostics-Results.

If errors are found, proceed to MemTest86 for a more definitive hardware-level test:

  1. Download MemTest86 from memtest86.com.
  2. Flash it to a USB drive using Rufus.
  3. Boot from the USB and let it run for at least 2 complete passes (8+ passes for thorough validation).
  4. If errors appear at any point, replace the RAM or test individual sticks to identify the faulty module.

Step 4: Repair System Files with SFC and DISM

Corrupted Windows system files can cause drivers to misbehave at the kernel level.

Open Command Prompt as Administrator and run the following commands in order:

DISM /Online /Cleanup-Image /CheckHealth
DISM /Online /Cleanup-Image /ScanHealth
DISM /Online /Cleanup-Image /RestoreHealth
sfc /scannow

After SFC completes, check the log at:

C:\Windows\Logs\CBS\CBS.log

Search for the string cannot repair to find any files that could not be fixed, which may indicate a more severe corruption requiring a Windows reinstall or in-place upgrade.


Step 5: Disable Overclocking and Reset XMP/EXPO

If you have enabled XMP (Intel) or EXPO (AMD) RAM profiles in BIOS, or manually overclocked your CPU or RAM:

  1. Restart your PC and enter BIOS (usually F2, Del, or F12 at boot).
  2. Navigate to the OC or AI Tweaker section.
  3. Set XMP/EXPO to Disabled or load Optimized Defaults.
  4. Save and exit.

Run your system for several hours or days to determine if the BSODs stop. If stability returns, you can try re-enabling XMP at a lower memory frequency, or update your motherboard firmware (BIOS) to improve memory compatibility.


Step 6: Perform a Clean Boot to Isolate Third-Party Conflicts

VPN clients, antivirus software, and virtualization platforms (Hyper-V, VMware, VirtualBox) install kernel-mode drivers that frequently cause IRQL conflicts.

  1. Press Win + R, type msconfig, press Enter.
  2. On the Services tab, check Hide all Microsoft services, then click Disable all.
  3. On the Startup tab, click Open Task Manager and disable all startup items.
  4. Restart and observe system stability.
  5. Re-enable services in batches to identify the culprit.

If a specific security product is identified, uninstall it completely using the vendor's dedicated removal tool (e.g., ESET Uninstaller, McAfee Consumer Product Removal Tool) rather than the standard Windows uninstaller, as these tools remove kernel drivers that the standard uninstaller leaves behind.


Step 7: Check for Windows Updates

Microsoft frequently releases patches that fix kernel-level driver issues:

  1. Go to Settings > Windows Update > Check for updates.
  2. Install all pending updates, including Optional and Driver updates.
  3. After updating, check View update history to confirm all updates installed successfully.

If a Windows Update itself caused the BSOD, you can uninstall it via Settings > Windows Update > Update history > Uninstall updates.

Frequently Asked Questions

powershell
# ============================================================
# IRQL_NOT_LESS_OR_EQUAL Diagnostic & Fix Script
# Run as Administrator in PowerShell
# ============================================================

# --- Step 1: List recent minidump files ---
Write-Host "=== Recent Minidump Files ==="
$dumpPath = "$env:SystemRoot\Minidump"
if (Test-Path $dumpPath) {
    Get-ChildItem -Path $dumpPath -Filter "*.dmp" | Sort-Object LastWriteTime -Descending | Select-Object -First 5 | Format-Table Name, LastWriteTime, Length -AutoSize
} else {
    Write-Host "No minidump directory found. Enable Small Memory Dump in System Properties."
}

# --- Step 2: Check Event Viewer for BSOD-related events ---
Write-Host "`n=== Recent System Critical Events (last 7 days) ==="
$startDate = (Get-Date).AddDays(-7)
Get-WinEvent -FilterHashtable @{LogName='System'; Level=1; StartTime=$startDate} -ErrorAction SilentlyContinue | Select-Object TimeCreated, Id, Message | Format-Table -Wrap | Select-Object -First 10

# --- Step 3: Check for Memory Diagnostic results ---
Write-Host "`n=== Windows Memory Diagnostic Results ==="
Get-WinEvent -FilterHashtable @{LogName='System'; ProviderName='Microsoft-Windows-MemoryDiagnostics-Results'} -ErrorAction SilentlyContinue | Select-Object -First 5 | Format-List TimeCreated, Message

# --- Step 4: Run SFC scan ---
Write-Host "`n=== Running System File Checker (SFC) ==="
sfc /scannow

# --- Step 5: Run DISM to repair Windows image ---
Write-Host "`n=== Running DISM Health Restore ==="
DISM /Online /Cleanup-Image /CheckHealth
DISM /Online /Cleanup-Image /RestoreHealth

# --- Step 6: Check for recently installed drivers (last 30 days) ---
Write-Host "`n=== Recently Installed or Updated Drivers (last 30 days) ==="
$cutoffDate = (Get-Date).AddDays(-30)
Get-WmiObject Win32_PnPSignedDriver | Where-Object { $_.DriverDate -and [datetime]::ParseExact($_.DriverDate.Split('.')[0], 'yyyyMMdd', $null) -gt $cutoffDate } | Select-Object DeviceName, DriverVersion, DriverDate, Manufacturer | Format-Table -AutoSize

# --- Step 7: List drivers sorted by date to spot recent additions ---
Write-Host "`n=== All Kernel Drivers by Date (newest first, top 20) ==="
Get-WindowsDriver -Online -All | Sort-Object Date -Descending | Select-Object -First 20 | Format-Table Driver, Version, Date, ClassName -AutoSize

# --- Step 8: Check RAM slots and memory info ---
Write-Host "`n=== Physical Memory Information ==="
Get-WmiObject Win32_PhysicalMemory | Format-Table Tag, Capacity, Speed, MemoryType, Manufacturer, PartNumber -AutoSize

# --- Step 9: Launch Windows Memory Diagnostic (interactive) ---
Write-Host "`n=== Scheduling Windows Memory Diagnostic ==="
Write-Host "Run the following command to schedule a memory check on next restart:"
Write-Host "  mdsched.exe"
# Uncomment the next line to launch it automatically:
# Start-Process mdsched.exe

# --- Step 10: Export system info for further analysis ---
Write-Host "`n=== Exporting System Info to Desktop ==="
$outputFile = "$env:USERPROFILE\Desktop\IRQL_Diagnostic_$(Get-Date -Format 'yyyyMMdd_HHmmss').txt"
"System Info for IRQL Diagnosis - $(Get-Date)" | Out-File $outputFile
"" | Out-File $outputFile -Append
"== OS Version ==" | Out-File $outputFile -Append
(Get-ComputerInfo | Select-Object OsName, OsVersion, OsBuildNumber, CsProcessors, CsTotalPhysicalMemory) | Format-List | Out-File $outputFile -Append
"== Installed Drivers ==" | Out-File $outputFile -Append
Get-WindowsDriver -Online -All | Sort-Object Date -Descending | Out-File $outputFile -Append
Write-Host "Diagnostic report saved to: $outputFile"

Write-Host "`n=== Diagnostic Complete. Review output above and the saved report. ==="
E

Error Medic Editorial

The Error Medic Editorial team is composed of senior DevOps engineers, Windows systems administrators, and SRE professionals with 10+ years of experience diagnosing and resolving kernel-level errors, BSOD crashes, and system reliability issues across enterprise and consumer Windows environments. Our guides are grounded in real-world troubleshooting, official Microsoft documentation, and community-validated best practices.

Sources

Related Articles in Other Irql Not Less Or Equal

Explore More windows Guides