On Mon, Jun 06, 2016 at 01:15:01PM +0100, Richard W.M. Jones wrote:
On Mon, Jun 06, 2016 at 03:12:36PM +0300, Roman Kagan wrote:
Parallels proprietary hypervisor uses RDPMC as the hypercall instruction. As this instruction is supported since early P6 family, the drivers didn't even bother to check for the presence of the corresponding feature in CPUID.
In QEMU/KVM, however, this instruction triggers #GP unless the VM is run with PMU (performance monitoring unit) enabled, which is often not the case (due to its impact on perfromance and migratability).
So, to prevent crashes upon conversion, stop respective drivers from loading by disabling the corresponding services. Note that the services are being disabled ("Start" value set to 4) rather than their node removed, to avoid confusing the uninstaller which is scheduled to run from a firstboot script.
In addition, prl_strg (storage filter driver) is unlinked from the storage subsystem following the DelReg directive from its .inf file, otherwise Windows crashes with BSOD 0x7b due to missing dependency of the storage subsystem.
Signed-off-by: Roman Kagan <rkagan@virtuozzo.com>
ACK.
Rich.
Thanks, pushed. Roman.