BAD_POOL_CALLER (STOP code 0x000000C2) indicates that the current thread has made an invalid pool request.
In simple terms, a pool is a collection of system resources and, in this case, refers to your system’s memory pool. A thread is a small sequence of programmed instructions.
The current thread’s request could be invalid for a number of reasons – the allocated memory it’s trying to free might already be freed, it might be using the wrong tag due to which it’s attempting to free memory that’s in use by another component, and so on.
Problematic drivers often cause bad requests like these, which ultimately lead to errors such as BAD_POOL_CALLER. We’ve discussed other possible causes, as well as all the appropriate solutions, in the guide below.
What causes the BAD_POOL_CALLER Error?
- Buggy Drivers
- Faulty Memory Module
- Outdated firmware
- Corrupt registry
How to Fix the BAD_POOL_CALLER Error?
If you made any changes to your system right before this BSOD occurred, you could likely fix it by simply reverting that change. Aside from that, the best way to fix this error is to figure out the exact cause and treat the issue at its root.
Determine the Exact Cause
The details of a BSOD are logged at
%systemroot%\Minidump. We recommend analyzing this minidump file, as this is the best way to figure out what caused the crash. You can also check the Event Viewer logs if you need further information.
Next, you should use the Driver Verifier tool to determine if a faulty driver is present. Note that it’s best to disconnect unnecessary peripherals before running the verifier.
Finally, you should also check the memory module and ensure it isn’t the issue. If you’re using multiple RAM sticks, you can take out one of them, look for signs of damage, and insert it into a different slot. If one of the sticks or slots does seem to be problematic, you’ll likely have to replace them.
If you’re using only one RAM stick or simply prefer the software route, you can use the run command
mdsched.exe instead to run the Windows Memory Diagnostic tool.
Modify Faulty Driver
From the previous step, you should be able to determine the reason for this BSOD. Most often, this will be an outdated or non-responding driver. You should update the problematic driver, but if that doesn’t help, you may have to roll back or uninstall it as well. The steps to do so are listed below:
- Press Win + R, type
devmgmt.msc, and press Enter.
- Right-click the faulty device and select Update Driver.
- Click on Search automatically for drivers and follow the on-screen instructions.
Roll Back Driver
- Press Win + X and select Device Manager.
- Double-click the faulty device.
- In the driver tab, click on Roll Back driver and follow the on-screen instructions.
- If the Roll Back option is greyed out, download an older stable version of the driver from an official source.
- Next, select Update Drivers > Browse my computer for drivers.
- Click on Browse and select the directory where the downloaded driver is stored.
- Select Next and follow the on-screen instructions.
- Right-click the Windows icon and select Device Manager.
- Right-click the faulty device and select Uninstall Device.
- The driver for this device will be uninstalled and reinstalled upon restarting.
Update BIOS / UEFI
Outdated firmware is a common culprit behind BSODs. And many users have reported that overclocking led to this error. Updating the BIOS / UEFI resets the overclocking settings to default, so you can essentially kill two birds with one stone.
Temporarily Remove Antivirus
A lot of McAfee and Avast users have reported facing this error due to conflict among the antivirus and network drivers. If the logs suggest an antivirus/network issue in your case as well, we recommend first updating the network driver.
If you keep facing the BAD_POOL_CALLER error after that, it’s best to uninstall the antivirus at least temporarily. You can use Windows Defender for protection in the meantime, and if the antivirus turns out to be okay, you can always reinstall it later.
Restore / Reset the PC
System restore resets the system files to the state they were when the restore point was created. There have been cases where a corrupt registry caused this BSOD. A system restore will be helpful in similar cases as it also saves a backup of the registry.
If you have a system image, you can also use that. But keep in mind that, unlike system restore, a system image will revert everything on the system, including your personal files, to the previous state. With that said, here are the steps to use either one:
- Hold Shift and restart your PC. Alternatively, reboot it three times in a row. Either method will land you in Windows Recovery Environment (winRE).
- Go to Troubleshoot > Advanced Options.
- Select System Restore. If you prefer System Image Recovery, that may be located under See more recovery options.
- Select the appropriate restore point or image and follow the on-screen instructions.
In rare cases, the restore point/image may be corrupt as well. If so, the final option is to reset the PC. You can do so by selecting Troubleshoot > Reset this PC option in winRE.