DRIVER_IRQL_NOT_LESS_OR_EQUAL on Windows 7: Complete Fix Guide
Fix DRIVER_IRQL_NOT_LESS_OR_EQUAL (Stop 0x000000D1) on Windows 7 with step-by-step driver, memory, and registry solutions. Resolve BSOD fast.
- Root cause 1: A kernel-mode driver (network, GPU, or third-party) attempted to access pageable memory at an elevated IRQL (Interrupt Request Level), triggering Stop Code 0x000000D1.
- Root cause 2: Faulty, outdated, or incompatible device drivers — especially after Windows Update, new hardware installation, or software that injects kernel drivers (antivirus, VPN clients, disk utilities).
- Root cause 3: Defective RAM sticks or memory controller errors causing corrupt data reads that manifest as illegal memory access violations at the kernel level.
- Quick fix summary: Boot into Safe Mode, identify the offending driver using the minidump file or WinDbg, uninstall or roll back that driver, run Windows Memory Diagnostic to rule out RAM issues, then verify system files with SFC and DISM.
| Method | When to Use | Time | Risk |
|---|---|---|---|
| Roll Back / Uninstall Driver | BSOD started after driver or software update | 5–15 min | Low |
| Update Driver Manually | Driver is outdated; manufacturer has newer version | 10–20 min | Low |
| Windows Memory Diagnostic | Frequent random BSODs, system is unstable across apps | 30–60 min | None |
| SFC /scannow + DISM | Corrupted system files suspected after failed update | 20–40 min | Very Low |
| Clean Boot / Selective Startup | Third-party software injecting kernel driver suspected | 15–30 min | Low |
| System Restore | BSOD appeared suddenly with no manual changes | 20–45 min | Low |
| Reinstall Windows 7 | All other methods failed; driver stack severely corrupted | 2–4 hrs | High (data loss) |
Understanding the DRIVER_IRQL_NOT_LESS_OR_EQUAL Error on Windows 7
When Windows 7 crashes with a blue screen displaying DRIVER_IRQL_NOT_LESS_OR_EQUAL, the full stop error reads:
STOP: 0x000000D1 (0xXXXXXXXX, 0x00000002, 0x00000000, 0xXXXXXXXX)
DRIVER_IRQL_NOT_LESS_OR_EQUAL
The four parameters in parentheses are: (1) the memory address that was referenced, (2) the IRQL at the time of the fault, (3) whether it was a read (0) or write (1) operation, and (4) the instruction address that caused the fault. Windows records this in a minidump file located at C:\Windows\Minidump\.
At the kernel level, drivers must only access pageable memory when the CPU is running at IRQL PASSIVE_LEVEL or APC_LEVEL (0 or 1). If a driver tries to dereference a pageable pointer while the IRQL is DISPATCH_LEVEL (2) or higher, the memory manager cannot safely page in the required data, and the kernel issues a bug check — the blue screen you see.
Step 1: Capture and Read the Minidump File
Before anything else, let Windows create a minidump. Verify your crash dump settings:
- Right-click Computer → Properties → Advanced system settings.
- Under Startup and Recovery, click Settings.
- Set Write debugging information to Small memory dump (256 KB).
- Confirm dump path is
%SystemRoot%\Minidump. - Click OK and reboot if needed.
After the next crash, open Event Viewer (Start → eventvwr.msc) and navigate to Windows Logs → System, then look for events with source BugCheck near the crash timestamp.
To read the minidump directly, install WinDbg from the Windows 7 SDK or the Debugging Tools for Windows package and run:
windbg -y srv*c:\symbols*https://msdl.microsoft.com/download/symbols -z C:\Windows\Minidump\Mini<date>-<num>.dmp
Inside WinDbg, type:
!analyze -v
The output will name the offending driver (e.g., ndis.sys, nvlddmkm.sys, atikmpag.sys, tcpip.sys). Note the driver name — every subsequent fix step targets it.
Step 2: Boot into Safe Mode
If the system BSODs before reaching the desktop, press F8 during POST to enter the Advanced Boot Options menu and choose Safe Mode with Networking. In Safe Mode, Windows loads only essential Microsoft drivers, which prevents the faulty third-party driver from loading.
Step 3: Identify and Fix the Offending Driver
Option A — Roll Back the Driver:
- Open Device Manager (Start →
devmgmt.msc). - Find the device associated with the driver named in the minidump (e.g., for
nvlddmkm.sys→ Display Adapters → your NVIDIA GPU). - Right-click the device → Properties → Driver tab → Roll Back Driver.
Option B — Uninstall and Reinstall the Driver:
- In Device Manager, right-click the offending device → Uninstall.
- Check Delete the driver software for this device and confirm.
- Download the latest stable driver from the manufacturer's official site (NVIDIA, AMD, Intel, Realtek, etc.).
- Install the downloaded driver and reboot.
Option C — Use Driver Verifier to Pinpoint Hidden Culprits:
If WinDbg's output is ambiguous, enable Driver Verifier to stress-test all non-Microsoft drivers:
- Open an elevated Command Prompt (Start → type
cmd→ right-click → Run as administrator). - Run:
verifier /standard /all - Reboot. The next crash will produce a far more specific minidump pointing to the exact driver.
- After identifying the driver, disable Verifier:
verifier /reset
Warning: Driver Verifier intentionally stresses drivers and will cause additional BSODs during diagnosis. Disable it as soon as you identify the culprit.
Step 4: Run Windows Memory Diagnostic
Faulty RAM can produce IRQL errors that have nothing to do with drivers. Test memory before assuming a driver fix is sufficient:
- Start → Search → type Windows Memory Diagnostic → open it.
- Select Restart now and check for problems.
- The tool runs on the next boot using the extended test suite. Results appear in the notification area after Windows reloads.
Alternatively, boot from a MemTest86 USB drive and run at least two full passes for more thorough coverage.
If errors are found: reseat RAM sticks (remove and firmly reinsert), test sticks individually, or replace the faulty module.
Step 5: Repair System Files
A corrupted system file — especially in the driver stack — can trigger this BSOD even when hardware is healthy:
sfc /scannow
Run this in an elevated Command Prompt. If SFC reports it cannot fix all corruptions, run DISM (available via the Windows 7 AIK or later service packs):
Dism /Online /Cleanup-Image /RestoreHealth
Reboot after completion.
Step 6: Check for Third-Party Software Injecting Kernel Drivers
Antivirus suites, VPN clients, firewall products, and disk encryption tools all install kernel-mode filter drivers that can conflict. Common offenders on Windows 7 include older versions of Avast, Norton, Comodo, and Cisco VPN client.
Perform a Clean Boot:
- Start →
msconfig→ Services tab → check Hide all Microsoft services → Disable All. - Startup tab → Disable All.
- Reboot and test stability. If stable, re-enable services in batches to isolate the culprit.
Step 7: Use System Restore
If the BSOD appeared suddenly and you can pinpoint when, use System Restore to revert to a known-good snapshot:
- Boot into Safe Mode.
- Start → All Programs → Accessories → System Tools → System Restore.
- Choose a restore point dated before the BSOD began.
- Confirm and allow the restore to complete.
Step 8: Check for Overheating and Hardware Issues
Overheating GPUs or CPUs can cause drivers to mis-fire. Download HWMonitor or SpeedFan to check temperatures. GPU temps above 90°C under load, or CPU temps above 80°C, suggest a cooling problem — clean dust from heatsinks and verify fan operation.
Also check the Windows System Event Log for disk errors (chkdsk /f /r C:) which can indicate a failing drive causing driver read failures.
Step 9: Last Resort — Repair Install or Clean Install
If the driver stack is severely damaged and none of the above steps resolve the BSOD, a Repair Install (booting from the Windows 7 DVD and choosing "Repair your computer" → "Startup Repair") can restore core system files without erasing personal data. A full clean install is the nuclear option and guarantees resolution at the cost of all installed software and settings.
Frequently Asked Questions
:: ============================================================
:: DRIVER_IRQL_NOT_LESS_OR_EQUAL Diagnostic & Fix Script
:: Run all commands from an elevated Command Prompt (Run as Admin)
:: Windows 7 compatible
:: ============================================================
:: --- 1. List all loaded third-party (non-Microsoft) drivers ---
driverquery /FO TABLE /SI | findstr /V "Microsoft"
:: --- 2. View recent minidump files to check crash frequency ---
dir C:\Windows\Minidump\ /O-D
:: --- 3. Check System Event Log for BugCheck events (last 20) ---
wevtutil qe System /c:20 /rd:true /f:text /q:"*[System[Provider[@Name='BugCheck']]]"
:: --- 4. Run System File Checker to repair corrupted system files ---
sfc /scannow
:: --- 5. Check disk for errors (schedules on next boot for C: drive) ---
chkdsk C: /f /r
:: Note: You will be prompted to schedule for next restart. Type Y and press Enter.
:: --- 6. Enable Driver Verifier for all non-Microsoft drivers ---
:: WARNING: This will cause BSODs until disabled. Use only for diagnosis.
:: Uncomment the line below to enable:
:: verifier /standard /all
:: --- 7. Disable Driver Verifier (run after identifying the culprit driver) ---
:: verifier /reset
:: --- 8. Roll back a specific driver using PnPUtil (example: network adapter) ---
:: First, find the driver INF name:
:: pnputil -e
:: Then delete the faulty driver package (replace oemXX.inf with actual filename):
:: pnputil -d oemXX.inf
:: --- 9. Export list of all installed drivers to a text file for review ---
driverquery /FO CSV /SI > C:\DriversReport.csv
echo Driver report saved to C:\DriversReport.csv
:: --- 10. Check RAM slots and memory info ---
wmic memorychip get BankLabel, Capacity, MemoryType, Speed, Manufacturer
:: --- 11. Check CPU temperature and hardware status via WMI ---
wmic /namespace:\\root\wmi PATH MSAcpi_ThermalZoneTemperature get CurrentTemperature
:: Note: Divide result by 10 and subtract 273.15 to convert to Celsius.
:: --- 12. Open Windows Memory Diagnostic (GUI) ---
start mdsched.exe
:: --- 13. Check for Windows Updates that may have installed a bad driver ---
wuauclt /detectnow
:: View update history in Control Panel > Windows Update > View Update History
echo.
echo === Diagnostics complete. Review output above. ===
echo === Check C:\Windows\Minidump\ for crash dump files. ===
pauseError Medic Editorial
The Error Medic Editorial team is composed of senior DevOps engineers, SREs, and Windows systems specialists with a combined 40+ years of experience diagnosing kernel-level failures, BSOD stop codes, and driver stack corruptions across enterprise and consumer environments. Our guides are built from real minidump analyses, Microsoft documentation, and hands-on lab testing on physical and virtual Windows systems. We are committed to providing accurate, actionable troubleshooting content that gets your system stable fast.
Sources
- https://learn.microsoft.com/en-us/windows-hardware/drivers/debugger/bug-check-0xd1--driver-irql-not-less-or-equal
- https://support.microsoft.com/en-us/topic/use-the-system-file-checker-tool-to-repair-missing-or-corrupted-system-files-79aa86cb-ca52-166a-92a3-966e85d4094e
- https://learn.microsoft.com/en-us/windows-hardware/drivers/devtest/driver-verifier
- https://stackoverflow.com/questions/tagged/windbg+bsod
- https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/analyzing-a-kernel-mode-dump-file-with-windbg