Showing posts with label solution. Show all posts
Showing posts with label solution. Show all posts

Tuesday, February 28, 2012

The nvmcp64.sys Blue Screen

This issue has been plaguing my Windows 7 installation since the beginning of time, or, well -- the beginning of this particular Windows 7 installation...

Every once in a while, my computer would blue screen displaying a DRIVER_IRQL_NOT_LESS_OR_EQUAL error due to a certain nvmcp64.sys, often with any playing audio looping the same fragment over and over again until I would grudgingly press the reset button.

DRIVER_IRQL_NOT_LESS_OR_EQUAL is one of those typical cryptic "STOP errors" that actually tell you almost nothing. The only reasonable thing to deduce is that it's probably a driver acting up, or some hardware gone bad. Searching around on forums quickly leads one to downloading Memtest86 to check if your RAM has gone bad, or to advice telling you that you should try removing your graphics card/audio card/memory/hard drives/and every other peripheral imaginable one by one, trying every possible combination of hardware until your computer boots up again or you die from boredom -- whichever comes first. Meh. Checking your memory is a good idea once in a while, but once your memory has been working for a year, chances are it will remain working perfectly until you build or buy your next machine.

Another thing you could do (especially if you've seen your fair share of blue screens) is to take a look at the  dump files Windows creates when it crashes (look in C:\Windows\Minidump\). Since we won't do that here, I won't go over the details on how to analyse these dumps. The reason why we won't explore the dump is because we already have a clear idea about which process, library, or - in this case - driver is causing the problem: nvmcp64.sys. So what is nvmcp64.sys exactly?

The prefix "nv" leads us to a plausible candidate: Nvidia! You might think that updating your graphics drivers are in order (another advice so commonly encountered), but you would be wrong, since the driver in this case is related to the nForce (Nvidia's bus architecture to handle IDE, RAID, networking and audio) chipset found on the motherboard. While searching around, some sites will advice you to disable your RAID controller or some such, which would again be incorrect, since nvmcp64.sys' job is also... to handle audio.

The solution is in fact pretty simple. Uninstall the Nvidia audio driver and go to Realtek's website to download a general AC'97 audio driver (an audio standard used by virtually any motherboard manufacturer, now replaced by Realtek's High Definition Audio standard). Realtek warns you that their general purpose drivers "may not offer the customizations made by your system/motherboard manufacturer", which is acceptable.

After doing this, audio now works fine, and the blue screens are completely gone. I've indeed lost some customizations/features offered by Nvidia (such as the record what you hear functionality), but these can be replaced by other software tools and were not really used that much by me anyway. Audio itself plays fine, without causing blue screens any longer.

Sunday, March 27, 2011

Quick Fix: Windows 7 Service Pack 1 Error 80073701

If your Windows 7 service pack upgrade is failing with error code 80073701, you might be able to fix it with the following steps. I've had to search around quite a bit before resolving this error, mainly because I saw the first and second solutions listed below pop up everywhere, but it was the third solution that actually fixed the problem for me in the end.

Solution 1: reset Windows Update components (you've probably done this already)

Download the Fix It tool from this Microsoft KB article and run it. Afterwards, restart your computer and try installing SP1 again.

Solution 2: run the System Update Readiness Tool (you've probably done this, too)

The tool can be downloaded from this Microsoft KB article. Make sure to download the correct version. Note that the updates installed by this tool might take a long time to complete. It will appear as if the installation process is stuck. Don't worry, as the progress bar might go from zero to hundred per cent in an instant, just be patient. Afterwards, restart your computer and try installing SP1 again.

Solution 3: check out the logs and run lpksetup (this might be new)

Still no dice? Then check the logs at c:\Windows\Logs\CBS\CheckSUR.log and/or c:\Windows\Logs\CBS\CheckSUR.persist.log. These will give you more detailed information about the error. For me, and for this user at superuser.com, the culprit was a language pack.

However, contrary to the user mentioned above, I am not using a language other than the default English, and cannot recall ever installing one. I ignored the language pack problem (as re-installing a language pack was not an option for me) until I learned about the Language Pack Setup Tool. Just run lpksetup.exe from your Start Menu. A window will pop up asking you if you want to install or uninstall a language pack. Pick uninstall. Sure enough, a list of languages was presented: English (the in use, default and system language), and some other language (Portuguese or Spanish, I can't remember) with a yellow danger sign marking that it was in a broken state. Very strange indeed. After selecting the language for removal and pressing next, the situation was promptly resolved. Deinstalling the language took just a few seconds, probably because no language files were actually present on the disk.

Anyway, after this small operation, installing SP1 went smoothly.