Some of you might have already heard that I've been getting really weird monitor issues intermittently.
It used to only be once in a blue moon, mostly when I was playing waifus on Bluestacks. So of course, I blamed Bluestacks for the troubles.
The monitor would suddenly blink out into noise akin to TV static, and since reattaching the HDMI cable only gives a blank screen, it's clearly not the monitor's problem.
It used to crash once every other week or so. Then it started happening more frequently.
I upgraded my RAM just a few days ago, and disgustingly enough, the crashes have happened almost every single time the computer runs now. Also curious is that the sleep function seems to be correlated with a lot of the crashes. I can sleep and wake up once perfectly fine, but the second sleep and wake does not detect my peripherals and monitor connections and I am forced to do a power cycle. Turning off the display after inactivity (???) somehow triggers a new type of colorful error, one that persists after reattaching the HDMI cable, so the GPU is clearly unhappy with whatever happened.
I've rebooted my computer no fewer than 15 times the past week, and a full OS reinstall seems to be the best choice. It's hard to say exactly what's causing the issue besides the obvious "a driver is throwing a tantrum" and I've been meaning to do a reinstall for a while anyway.
Windows's built-in memory diagnostics found nothing either.
The next part is really lucky timing. I was dealing with a huge escalation at work and I learned how to use Event Viewer for troubleshooting. I was looking through the Event Viewer that comes with Windows for something completely unrelated, and voila! I see a bunch of entries coinciding with every crash I've had. I didn't expect Windows to have any information, so it's a lucky break?
This gives a whole bunch of information. BugCheck suggests that this consistent crash is not an accident, and Windows managed to get something of value before the terrible(TM) crash happened. The other bundles of errors give great information too.
Let's focus on the BugCheck. The message code it gives is 0x0...50. Looking this up brings us to this page on the Microsoft docs which suggests a page fault happened due to referencing bad memory. The RAM upgrade is not at fault since my original RAM already had the problem for a while. So it's probably something in the OS.
There's also a dump referenced. It's time to install WinDbg, some symbols, and see what the dump says.
Thanks to a fancy "!analyze -v" command, a nice printout of the specific issue is made for us.
From the help page on how to analyze this, ene.sys (a driver) caused the crash while it was making mscorsvw. Sure enough, I do have that process running.
But what is ene.sys and why would it run some .NET packaging process?
With some Google-fu, I landed on a forum help page, and possibly for the first time in my life, I see a forum response by a professional who not only did not give a canned response, but also gave a very specific answer to the ene.sys. Based WilliamDz.
Following the poster's link to G.SKILL's forum, we get a guide for driver uninstallation.
The real question here is, why do I even have ene.sys? My only G.SKILL hardware was the RAM that I swapped out, and those sticks didn't even have color control. My GPU has lighting but I don't have software to control that either. Where did ene.sys come from???
Either way, I followed the uninstall guide. Only time will tell if something else is contributing to the problem as well.
EDIT 7/6: There weren't problems YAY. But I've decided to reinstall Windows anyway, and with some new "win7 not supported" problems you can read about it the next blog post, Linux as well.