You are not logged in.
Pages: 1
kernel version: 4.10.1
qemu version: 2.8.0
CPU: i5-4460
Motherboard: Gigabyte B85M-D3H
Hello. I installed Windows 10 using qemu. All working OK except SOLIDWORKS - It refuses to be installed in a virtual machine (screenshot attached).
I disabled the CPUID 0x40000000 leaf, using kvm=off and changed ACPI Tables.
Here is my command to start virtual machine:
qemu-system-x86_64 \
-enable-kvm \
-machine q35,accel=kvm \
-cpu host,kvm=off \
-smbios type=0,vendor=LENOVO,version=FBKTB4AUS,date=07/01/2015,release=1.180 \
-smbios type=1,manufacturer=LENOVO,product=30AH001GPB,version="ThinkStation P300",serial=S4M88119,uuid=cecf333d-6603-e511-97d5-6c0b843f98ba,sku=LENOVO_MT_30AH,family=P300 \
-show-cursor \
-usbdevice tablet \
-drive format=raw,file=win10 \
-device vfio-pci,host=01:00.0 \
-device vfio-pci,host=01:00.1 \
-m 8G
Windows 10 successfully starting, but recognizing the virtual environment: NVIDIA drivers and SOLIDWORKS is not working. (NVIDIA has famous code 43 error). I think, it happens for the same reason.
I have a successful experience of passthrough a lot of ATI graphics cards and this command must work with Radeons.
I draw your attention to the fact that the NVIDIA graphics card passthrough is working.
Now the main task is to hide from Windows that it works under the KVM.
Thanks in advance to anybody who can help.
Last edited by Dirmork (2017-03-12 11:43:55)
Offline
If I'm not mistaken, KVM uses the CPU's virtualisation capabilities (Intel VT-x, AMD-V), and the CPU handles the context switching between OS "levels" and privilege shadowing and other virtualisation stuff, and I doubt that you can make the CPU "fake" its operating mode without actually breaking it (see also this thread on serverfault).
Offline
ayekat, I read this thread before posting here
In this thread the author managed to hide from the SolidWorks the fact of launching in a virtual environment.
It also says that this method also helps to deceive the NVIDIA driver, which refuses to run with code 43.
However, I was not able to repeat the success in a similar way on Arch Linux, but by your link we have confirmation that this is possible.
The most convenient solution is to use Windows as a host system for Solidworks and virtualize Linux for all other software, but this is "not our way" I would like Linux as the host system.
Last edited by Dirmork (2017-03-18 05:12:09)
Offline
for error 43:
add:
hv_vendor_id=SomeString,
in the -cpu option, like:
-cpu host,kvm=off,hv_vendor_id=SomeString
Offline
Pages: 1