FloFaber.com Quick Fixes

Event ID 4101 - Display driver nvlddmkm stopped responding and was recovered

Read this first

I found this problem while passing thru a NVIDIA GPU to a KVM Windows Guest but this can also occur on a normal Windows PC.

Some people suggest updating/reinstalling nvidia drivers, changing the PCIe version to 2.0 or even reinstalling the whole OS and some other weird "solutions". While some of them are worth trying out not a single one of those did help me getting closer to a stable display driver.

Of course this can be caused by a hardware failure as well but since the GPU was working fine before I didn't believe that. So I made my way deep into the rabbit hole of Error 4101.

Things to check beforehand

  • Make sure you have the right driver installed for your GPU
  • Run a RAM-Test to make sure your RAM is not the problem's source
  • If overclocked set the memory and core frequence of your GPU to default
  • Benchmarks like Furmark did not cause any crashes in my case but most 3D games did. Especially Titanfall 2 and Battlefield V caused the driver to crash pretty much instantly.

The Problem

NVIDIA driver crashing after a couple minutes when playing a game or utilizing the card a little bit.

  • Suddenly a black screen.
  • After a few seconds you can see your Windows wallpaper because your game crashed hand in hand with the display driver.

Why?

Windows seems to be using so called Line-Based Interrupts instead of Message-signaled Based Interrupts by default.

More information about interrupts can be found here: forums.guru3d.com

The solution

Tell windows to use Message-Signaled Based Interrupts for your GPU. However it's a little bit tricky to do that:

Find the GPU in device manager

  • Open up Device Manager
  • View -> Resources by type
  • Expand Interrupt request (IRQ)
  • Scroll down to device nodes starting with (PCI) 0x... (number) device name
  • Now you need to find your GPU by the device name (Probably something with NVIDIA in it's name).
  • Right click on the device -> Properties.
  • Go to the Details-Tab
  • Select Device Instance Path in the Dropdown list
  • Write down the Value

Copy the value on the right. Yours will most likely start with 'PCI'


  • Devices with a positive number are line-based
  • Devices with a negative number are message signaled-based



Switch to message signaled-based interrupts

  • Open up regedit and Navigate to HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\VALUE-HERE\Device Parameters\Interrupt Management
  • Replace VALUE-HERE with the value copied from the device manager.
  • Create a subkey named MessageSignaledInterruptProperties
  • In this subkey create a DWORD value (32-bit) named MSISupported and set the value to 1.
  • Then reboot and check the device manager if the the number changed to a negative number.
  • You can also disable Message-Signaled Bases Interrupts again by simply setting MSISupported to 0


I'm not responsible for any possible damage on your computer and/or Operating System.