I recently installed an SSD into my laptop and did a clean install of Windows 10. Occasionally after some usage, Windows 10 would freeze but I could still move my mouse. Eventually I couldn’t click on anything, but I could still move the mouse around the screen. Trying Control+Alt+Delete wouldn’t work so there was no way to access the Task Manager or restart the machine. The only option was to long-press the power button and kill the power, then restart it.
While searching for similar problems, I came across this suggestion, which is Microsoft KB3083595
According to the article:
While device resets can be caused by a varying number of factors, we are aware of issues with some Advanced Host Controller Interface PCI-Express(AHCI PCIe) models that causes these symptoms in Windows 10 when running with the inbox StorAHCI.sys driver. Due to a firmware bug, the Solid-state drive (SSD) does not properly complete input/output when Message Signaled Interrupt (MSI) mode is enabled. As a result, the Windows storage stack attempts to reset the device after waiting on unresponsive reads or writes for a period of time.
How To Fix Windows 10 Freezes With SSD
Identify if you are running the inbox AHCI driver (StorAHCI.sys):
- Open a command prompt with administrator privileges. Then type the following command in the command prompt window and hit Enter: devmgmt.msc
- Under IDE ATA/ATAPI Controllers right-click on the AHCI controller node and select Properties. This node is usually called “Standard SATA AHCI Controller.”
- Navigate to the driver tab and click Driver Details.
- If you see “StorAHCI.sys” in the list, you are running the inbox driver.
Disable MSI for the controller in the registry:
- With the same properties window opened, navigate to the Details tab and select Device instance path from the Property drop-down menu. Note this path.
- Open the registry editor by running regedit
- Navigate to:
HKEY_LOCAL_MACHINESystemCurrentControlSetEnumPCI(AHCI Controller)Device ParametersInterrupt ManagementMessageSignaledInterruptProperties, where (AHCI Controller) refers to the device instance path you noted earlier.
- Change the value of the MSISupported key from “1” to “0”.
- Repeat the steps for all AHCI controllers found in Device Manager.
- Reboot the machine.
Driver Update Option
If you’re using the generic driver StorAHCI, I would recommend trying to find the driver that matches your chipset. In my case, it is Intel. While I thought I installed all of the drivers from my laptop manufacturer, I realized the AHCI driver didn’t actually install. It copied the files to a folder but there wasn’t an installer exe.
- Go to Device Manager and IDE ATA/ATAPI Controllers.
- Right click on the Generic SATA controller and go to Update Driver Software.
- Click “Browse My Computer For Driver Software” and browse to the folder where your driver is extracted to.
- After clicking Next, it should automatically detect the updated driver and ask you to reboot.
It is almost always better to run matching drivers than use the generic ones. I’m still testing, but so far I haven’t had anymore freezing.
While the Microsoft article refers to the disk usage getting stuck at 100%, I cannot verify if that was the cause of my issue since I couldn’t access Task Manager when it happened. After a few hours of making this registry change, I haven’t had the issue repeat itself.
If you’ve encountered this issue, let us know if this fix worked for you or not by leaving a comment below.