Last week after showing a client some of new features in Windows 10, they went off and upgraded a laptop to the preview from Windows 8.1. Initially all seemed to go well. That is until they tried to start up VMs on their SSD drive. At that point Mr Sad & Grumpy came to visit.
They were getting errors such as:
VMName failed to start
Microsoft emulated IDE controller failed to power on with error "The file cannot be accessed by the system"
Looking at the details they saw Error 0x80070780. That is a fairly generic file system error. Doing a quick search provided no immediate clues. Please note the image above has been edited and redacted to remove some customer identifiable information.
Uh oh Shaggy, it's now troubleshooting time!
Troubleshooting – Step 1
Creating a brand new VM, and then powering it on worked perfectly. There were no issues, and everything worked as expected. This proves that the hypervisor is loaded and is functioning correctly.
All of the original VMs continued to experience an error. We could see all of the files on disk, and superficially at least everything looked OK.
Troubleshooting – Step 2
Now that we knew the hypervisor is OK, we went back and reviewed all of the Hyper-V event logs. That did not provide sufficient detail to fully understand the issue. Then we went back to the 0x80070780 error. What was making that error fire?
A mini Spanish inquisition then ensued! *
During a barrage of questions, we quickly discussed multiple topics. This ranged from SSD firmware issues, previous issues with the SSD drive and also what was the history with that particular laptop. Then there was an epiphany!
The clue is that the VMs were on an SSD. This was a small 64GB SSD, and you could image that 64 GB is not a lot of space in today's world. To get more VMs onto this small SSD they had followed some of the unsupported 3rd party blog postings on the Internet to install the Windows Server 2012 R2 dedupe feature onto their Windows 8.1 machine.
This is not a supported scenario. When Windows 8.1 was upgraded to Windows 10, the installer does not expect to find the server dedupe feature so it was removed. All of the VMs that had been deduped were now inaccessible since Windows had no way to understand how to access them.
They were able to get access to the VMs by again following unsupported 3rd party blog posts to re-add the Windows 10 server dedupe bits.
In this case the admin got a fright, and managed to regain access to their VMs. However this should be used as a case in point where Microsoft support would not have been able to fully help since this is not a supported scenario.
Please note installing the Windows Server dedupe feature onto client builds is not supported.
Update 18-9-2015: If you wish to vote on adding support for this feature into Windows, please read this post.
* No cushions or comfy chairs were harmed during the making of this blog post.