The Developer's Tidbits

Helpful tips for random problems
The skyline of Sydney, Australia - used as a header image for aesthetics
The skyline of Sydney, Australia - used as a header image for aesthetics

windows hardware

Samsung NVMe SSD – DPC Watchdog Violation errors

Reading time for 264 words - 1 minute

Upon the latest Windows 10 version 1803 update*, my desktop became volatile to the point of being utterly unusable within a few minutes of use as the machine would pause before eventually completely freezing with a BSOD (bluescreen of death) and a DPC Watchdog Violation error.

This violation error is a generic catch that is hard to troubleshoot because either:

  • A piece of hardware in your system is locking up and probably needs replacement.
  • A software driver for some hardware device is failing.

After pulling out all the internal cards, disabling any onboard features and updating the motherboard BIOS, the violation error was still triggering. Which meant either the motherboard, the solid-state drive hosting Windows 10 or one of their drivers were failing.

The system is a Gigabyte GA-Z170MX-Gaming 5 which uses the Intel Z170 Express Chipset and a PCIe Gen3 x4 M.2 Connector, while the host SSD is a Samsung 950 Pro.

A check on Device Manager showed everything was okay except it wasn’t. For whatever reason, my computer was using the wrong Storage Controller with the Surface NVM Express Controller active, and this was causing a severe driver malfunction with my machine.

The quick fix for me was to replace this driver with one provided by Samsung, the Samsung NVMe Driver. I don’t know why the Microsoft Surface NVM Express driver is a compatible option on my system, but it clearly shouldn’t be.

*Either release update KB4100347 or KB4480966.

Device Manager
Device Manager
Wrong Surface NVM Express Controller
Wrong Surface NVM Express Controller
Update Drivers
Update Drivers
Let me pick from a list
Let me pick from a list
Make sure you select the Samsung NVMe Controller!
Make sure you select the Samsung NVMe Controller!

Written by Ben Garrett