0x00000041: How to Fix MUST_SUCCEED_POOL_EMPTY Error
0x00000041 usually means MUST_SUCCEED_POOL_EMPTY. Officially, the bug check value is 0x00000041, and it indicates that a kernel-mode thread requested too much must-succeed pool; no driver is permitted to request must-succeed pool, and Windows issues this bug check if that request cannot be filled. (Microsoft Learn)
The fastest safe first step is to sort the crash into one of three patterns: after a recent driver change, during startup or shutdown, or after dump analysis points to broader pool pressure.
What does 0x00000041 mean in Windows?

It is a Windows blue-screen stop code, not a normal app popup, and it points to a kernel-mode driver path that needs dump analysis and driver-focused troubleshooting.
MUST_SUCCEED_POOL_EMPTY in plain English
The label attached to this stop code is MUST_SUCCEED_POOL_EMPTY. A reported example from bleepingcomputer.com shows STOP: 0x00000041 … MUST_SUCCEED_POOL_EMPTY. (hashroot.com)
For troubleshooting, the practical takeaway is to identify the driver involved and then replace, remove, update, or rewrite that driver. Microsoft says the kb stack backtrace command should be used first and can show the driver that caused the error. (source)
Why this differs from an app error with the same code
Pages about installer, network, or app errors that reuse 0x00000041 are describing a different problem space. On a BSOD, the key evidence is the dump file and the driver stack.
According to Bug Check 0x41 MUST_SUCCEED_POOL_EMPTY — Microsoft identifies the bug check value as 0x00000041. (source)
What should I do first when I get stop code 0x00000041?

Start with pattern matching, not repair scans. If the first crash followed a driver change, open Device Manager, find the device you changed, then use Properties > Driver > Roll Back Driver. If rollback is not available, use Update Driver or restore the system to a point before the first crash. If you have a dump file, inspect it before swapping drivers at random.
Three-path triage table
| Symptom pattern | Likely next check | Fastest safe check | Next action |
|---|---|---|---|
| BSOD appears during startup, shutdown, resume, or just before the sign-in screen | Check whether a recent driver or firmware change happened before the first crash | Disable Fast Startup at Control Panel > Hardware and Sound > Power Options > Choose what the power buttons do > Change settings that are currently unavailable > clear Turn on fast startup | Check the BIOS or UEFI version shown in System Information (msinfo32) against the version on the system maker’s support page, then review recently changed drivers |
| Crashes begin right after a new driver, dock, SSD tool, GPU package, antivirus filter, or motherboard utility | Recent system-level driver change | Open Device Manager > the changed device > Properties > Driver > Roll Back Driver, or use Update Driver for the recently changed device | If rollback is unclear, open Control Panel > Recovery > Open System Restore, click Next, pick a restore point dated before the first BSOD, and then confirm the faulting stack in WinDbg with kb |
| Minidumps keep naming different modules, or kb does not cleanly point to one bad actor | Use the Microsoft debugger commands for pool analysis | Open the dump in WinDbg, run kb first, then !vm 1 to view total pool usage, then !poolused 2 for per-tag nonpaged pool usage | If pool usage is abnormal, add !poolused 4 for per-tag paged pool usage and trace the dominant tag or repeated stack owner back to the related driver package |
Likely causes, ranked by fit
A recent driver change is an important first check because it is easy to verify and reverse. If no clear change lines up with the first crash, move to dump analysis with kb, !vm 1, and the pool-usage commands rather than guessing from timing alone.
What do the bug check parameters for 0x00000041 mean?
The supplied Microsoft documentation for this bug check does not define the meanings of parameters 1 through 4. Instead of trying to decode those values from an unsupported table, use the documented debugger flow: kb first, then !vm 1, then !poolused 2, and !poolused 4 if needed.
Read the values as a pressure snapshot
You can still record the four values from the blue screen or dump header as part of the crash record, but do not treat them as a reliable driver ID on their own. For this stop code, Microsoft’s documented path is stack backtrace first and pool-usage inspection after that.
If the same stop code appears repeatedly, compare the dumps for timing, repeated modules in the backtrace, and repeated pool tags rather than relying on the raw parameter values alone.
Why competitors miss this
Generic advice to “update drivers” is not enough here. The useful distinction is whether kb points to a specific driver immediately or whether pool-usage commands are needed to narrow the search.
Did 0x00000041 start after a driver update or new hardware?
If the first BSOD appeared right after a driver package, dock, storage tool, GPU update, chipset package, or new hardware install, treat that change as the primary suspect. The safe path is rollback first, then targeted updates, then System Restore if the timeline is clear but Device Manager does not expose a clean rollback.
If that fits, try this next
- Open Device Manager. In Windows 10 or 11, press Win + X > Device Manager.
- Check the devices you changed just before the first BSOD.
- For that device, open Properties > Driver. Use Roll Back Driver if available. If not, use Update Driver and point Windows to the current package from the hardware maker.
- If the system became unstable after several changes, open Control Panel > Recovery > Open System Restore, click Next, check dates and descriptions, and choose a restore point created before the first crash.
- After rollback or restore, run
sfc /scannowin an elevated Command Prompt. If SFC reports unrepaired issues, runDISM /Online /Cleanup-Image /RestoreHealthnext.
How admins should verify it
Locate the dump file, often a .dmp or .mdmp, and open it in WinDbg; bleepingcomputer.com reports that finding those files on disk is a necessary first step for analysis. Run kb first because Microsoft says that command can show the driver that caused the error and should be used first.
Does 0x00000041 happen during shutdown or startup?
If the BSOD clusters around startup or shutdown, begin with standard Windows checks that are easy to reverse: disable Fast Startup, note any recently installed drivers or firmware updates, and compare the current BIOS or UEFI version with the version offered by the PC or motherboard maker.
If that fits, try this next
- Disable Fast Startup: Control Panel > Hardware and Sound > Power Options > Choose what the power buttons do > Change settings that are currently unavailable, then clear Turn on fast startup and select Save changes.
- Check the current BIOS or UEFI version in System Information. Press Win + R, type msinfo32, press Enter, and compare the BIOS Version/Date entry with the version offered on the PC or motherboard maker’s support page.
- After any BIOS or firmware update, revisit Device Manager and update or reinstall any device drivers that changed around the same time.
- If crashes continue, use a dump from that startup or shutdown crash and run kb, then !vm 1, then !poolused 2.
When this points to firmware or hardware
If the timing strongly suggests a change outside Windows, compare that change against when the crashes began. If the timeline is not clear, rely on the dump and debugger output instead of assuming firmware is the cause.
How do you confirm pool exhaustion and find the driver?
Use WinDbg in sequence, not as a random command list. Run kb first to inspect the driver stack backtrace. If the stack does not explain the failure or different dumps implicate different modules, move to the documented pool-usage commands.
WinDbg flow for this stop code
- Open the crash dump in WinDbg and run kb. Microsoft says the kb command will show the driver that caused the error and should be used first.
- If the stack is noisy or the named module looks incidental, run !vm 1 to display total pool usage. Then run !poolused 2 and review the per-tag nonpaged pool output for unusually large or repeatedly dominant tags.
- If the output from !vm 1 and !poolused 2 suggests broader pressure and you also want to check paged pool usage, run !poolused 4 and compare the largest tags there as well.
- Map the hot tag or repeating stack owner back to the related driver package, then replace, remove, or update it. Microsoft’s documented fix direction is to replace or rewrite the driver making the request; a driver should ask for normal pool and handle temporary empty-pool conditions gracefully instead.
Home users versus admins
Home users can stop after the safe checks: rollback the recent driver, disable Fast Startup, compare firmware versions, and run SFC and DISM. Admins and driver developers should continue with dump correlation across multiple crashes.
Still not working?

If 0x00000041 keeps happening after the right path was tried, gather evidence before making larger changes. Repeated blind reinstalls can erase the timeline that helps identify the responsible driver or system change.
What to collect before deeper support
- Copy recent dump files from
C:\Windows\Minidumpor the system dump location configured in System Properties > Advanced > Startup and Recovery. - Write down the crash pattern and keep it specific: note whether it happens at startup, shutdown, resume, idle time, or right after sign-in, and whether it repeats in the same stage each time.
- List the last driver, dock, SSD tool, GPU package, BIOS update, or device added before the first BSOD.
- Run Windows Memory Diagnostic from Start > Windows Tools > Windows Memory Diagnostic only if the evidence no longer points cleanly to drivers.
- If Windows is unstable even in normal boot, try msconfig > Services > Hide all Microsoft services > Disable all, then restart for a clean boot test.
If that still does not settle it
Home users should stop at dump collection, restore points, driver rollback, firmware checks, and safe Windows repair commands. Admins can continue with multi-dump WinDbg review. Driver developers should focus on the stack owner, pool tags, and any must-succeed request path because Microsoft’s guidance is direct: replace or rewrite that driver.
Prevention
Keep a restore point before storage, chipset, graphics, docking, antivirus, or firmware changes. When you do hit this stop code, save the dump and note the timing before you start changing multiple things at once.
Frequently asked questions
Is 0x00000041 a driver or memory problem?
Start by treating it as a driver-focused kernel crash. If dumps are inconsistent, use WinDbg kb first and then !vm 1 and !poolused 2 before treating it as a generic memory issue.
How do I find the driver causing MUST_SUCCEED_POOL_EMPTY?
Open the dump in WinDbg and run kb first. If the stack does not settle it, run !vm 1 and !poolused 2; if you also need paged-pool detail, add !poolused 4.
Can Fast Startup or BIOS updates help stop code 0x00000041?
They can be reasonable checks when crashes cluster around startup or shutdown. Turn off Fast Startup at Control Panel > Hardware and Sound > Power Options, then compare the installed BIOS or UEFI version in msinfo32 with the one on the system maker’s support page.
When is 0x00000041 a hardware or firmware issue instead of Windows corruption?
Consider that possibility when the timeline points to a recent firmware or hardware change and the dump does not clearly implicate a specific driver. If the timeline is unclear, rely on kb and the pool-usage commands first.
How is Windows stop code 0x00000041 different from an app error with the same code?
On a BSOD, 0x00000041 is tied to a kernel dump and driver analysis. An app, installer, or network page using the same hexadecimal value is describing a separate product-specific error path. If there is no blue screen and no dump file, this guide is the wrong diagnostic branch.






