BAD_POOL_CALLER is part of the message you get from one type of Windows Blue Screen of Death (BSoD or BSOD or occasionally ****! BSOD!). You may never fix it or you might be lucky. Reinstalling Windows from the start is also an option.
Reinstalling Windows from the start is always an option that will clean out a few problems but also cause a lot of headaches if you do not have perfect copies of all the files you need. Most people do not know which files they need or where they are all hidden because Windows works hard at hiding things in stupid locations. I suggest you practice the installation using a spare computer before you attack your main computer.
Write everything down
The BSOD contains a lot of meaningless data that can help identify faulty software. You have to write down the first 2 or 4 lines in minute detail. BAD_POOL_CALLER usually has two lines of useful data. You will see addresses similar to 0x0000001C. Experienced technical people can trace a faulty driver using those weird addresses. Search for BAD_POOL_CALLER plus those addresses (excluding 0x00000000) to find specific help.
Some of those addresses are the same across different machines and will connect to specific drivers. Many of those addresses are relative to your implementation of Windows and depend on the order in which everything is loaded. You might be lucky and have an address mentioned in another page.
BAD_POOL_CALLER may be caused by a virus. It can also be caused by a virus attack. The best anti-virus software in the world can be out of date and miss a new virus. BAD_POOL_CALLER can be caused by a new virus attacking your computer from a Web page. The virus might not get into your system because your system crashes during the installation. The next time you visit the same Web page or any one of the hundreds of thousands carrying the same virus, your system is crashed again.
If a virus is installed, the BSOD will continue while the virus is active. Removing the virus using virus related software may not fix the problem because the virus removal might remove a current operating system file and replace it with an older incompatible version. Sometimes after virus removal, you have to run the operating system repair process from the original operating system disk then step through security updates.
In extreme circumstances the repair mode will make matters worse because there is no compatible mix of the old and new. You will have to reinstall from the start. You will require all those hardware drivers during the installation process. You will require all your application profile files and everything else you never backup.
See Virus. Many of those adverts on the Internet try to do exactly the same as a virus. They try to access things they should not. They try yo use Java. They use untested software one of the crew download from the Internet. If there is animated advertising on a Web page, there could be a crash.
Internet Explorer is the most common virus on Windows computers. You cannot get rid of IE because Microsoft locked IE into their operating system. IE rarely causes a BSOD but IE does lock up Windows and cause huge periods of slowdown where you end up rebooting to get rid of the problem. Using Firefox is an easy cure. Just remember to delete all the icons for IE and change all the file associations to never start IE because once it is started, even if it is closed, it is still actively interfering with Windows.
My Firefox 3.6 on Windows 2000 crashes with BAD_POOL_CALLER when visiting certain pages. The problem started with Firefox 3.5 and continues. Firefox is now allowing some sort of bad software action that was not allowed before.
The problem does repeat. When the computer first crashes, the restart brings up Firefox visiting the same pages and the same crash. After the second restart, Firefox says oops and offers to start with a fresh session. Starting with a fresh session removes the crash. Restarting the previous sessions goes straight to the crash again.
The problem is not reproducible. The initial problem occurs after searching for information and popping open several Web pages in new tabs. One of those pages will cause the crash. After restarting with a fresh session, repeating the search, and opening the same pages, the problem does not always occur. The crash requires a combination of circumstances I have not mapped. Perhaps a page has rotating advertising and the problem advert has moved out of the rotation.
Faulty hardware will cause crashes including a BSOD but not one with BAD_POOL_CALLER. A faulty disk can crash a poorly written disk controller driver. The crash is really a driver fault unless the crash is in the disk containing the operating system and then the crash is because of a poorly written operating system.
Faulty hardware drivers cause crashes including a BSOD with BAD_POOL_CALLER. I have not run into a specific case. There are lots of Web pages reporting problems related to new USB devices. Sometimes the problem is fixed by removing new USB drivers.
Problems with USB drivers can be minimised. You use a professional version of Windows because they are the only ones with security. You use NTFS instead of FAT because NTFS has security. You have to log in to the administrator login to install software. The first time you connect a new USB device you often have to be in administrator mode to successfully install the USB driver.
If you start in a regular login, Windows might not install the USB driver but might mark it as installed. You then have all sorts of weird errors because Windows tries to use half a driver or a default that does not work. Going into administrator mode to clean up and reinstall the driver does not always work. you end up in a mess where you have to delete and reinstall everything related to USB.
Identifying USB data in your operating system can be difficult. Your Expensive-brand USB device might be manufactured by the Great Wall Timber, Leather, Electronics, and Lunar Exploration Import Export company of China. The internal identifier can be totally meaningless. The internal identifier might be listed in Windows among dozens of other meaningless identifiers.
Windows Update crashes lots of computers with all sorts of problems including a BSOD. BAD_POOL_CALLER has not appeared among the many Windows Update crashes I witnessed. Most of the Windows Update crashes occur when the update tries to install anything related to .NET. Unfortunately .NET is hidden in many Windows updates including security updates. .NET is competing against Internet Explorer to cause the most viral damage to Windows.
Your backup should include all the tiny files hidden in software applications. Where is your bookmark list for your browser? The questions are endless. Hopefully most of the files will be in your user profile in a directory named C:\Documents and Settings\peter or similar.
One trick is to use two disks in your computer. We will call them disk C and disk P for Peter. You put all your data on disk P so that you can wipe disk C and reinstall your operating system at any time. Your user profile is on C and can be redirected to a directory on P. You create P:\peter and redirect C:\Documents and Settings\peter to P:\peter. When you recreate user peter in the new installation of Windows, you simply redirect C:\Documents and Settings\peter to P:\peter. Backup P daily. C should need a backup only when you install new software.
Using two disks will work when a virus or IE or .NET damages the operating system or a working application because the damage will be on C. If an application does something silly with a file in your user profile, the damage will be in P instead of C. I do not have an example but theoretically a virus could attach to one of those icons used in bookmarks. Some applications stupidly store temporary files in your profile instead of in the temporary file directory and a temporary file could contain a virus and could be activated after reinstallation.
MySQL might install as c:\mysql and place databases in c:\mysql\data. That data directory can be redirected to p:\mysql\data. You can do the same with Apache and other applications. Get the data and configuration files off C so you do not have to reinstall them. After reinstalling, you just copy in the redirect files.
After a BSOD containing BAD_POOL_CALLER do the virus cleanup thing then look at recent drivers and Windows updates. write down what you were doing just before the WSOD and see if a pattern emerges after several WSOD. A complete clean Windows reinstall awaits when you cannot identify a pattern to blame specific software.