QEMU guest reboot on game start

Hey there!
Based on the idea I saw on this site, I managed to set up a Windows 10 guest on a Linux Mint host, using QEMU. I passed my GPU and everything works fine, including gaming /w Dying Light, World of Warcraft and a few other tested games. But with some games I have a pretty strange problem. Starcraft 2, Heroes of the Storm and Lego Star Wars III (don't ask why I play the last one) and probably a few other untested games basically crash my guest, resulting in it's full reboot after a minute or so. The game doesnt even start, the symptoms happen right at its launch: black screen, reboot after a minute. Any idea what could be causing this? I have the latest drivers and latest windows updates installed. Could this be a win10 bug?
DxDiag: http://pastebin.com/yNMT1FXw
MsInfo: http://pastebin.com/NdmfaVDx
QEMU script: http://pastebin.com/nqBiHZ4H
EDIT: Dump file: http://pastebin.com/pUQu8hN5

2 Likes

I notice from your dxdiag that you have a nvidia card, ive never tried passthrough with a Nvidia gpu, but i know extra steps need to be taken. have you done these steps?

As far as I know I did. Some extra configuration was needed with the qemu config and whatnot, but as I mentioned most games work perfectly, the driver seems to work perfectly and apart from this, I have no issues with the GPU at all.

I assume you've tried these already, but if not, give these a try in the guest:

  • Try running the culprit games as Administrator to see if it still happens
  • Try 'sfc /scannow' in a Windows DOS prompt
  • Update/downgrade graphics driver

I've tried all of the above, without any success,sadly.

Ouch, I don't think I can help you any further, sorry

Is there any log on the host side that might indicate something (QEMU, dmesg ...) ?

sounds like your games are requesting a unavailable resource.

I'll gather any related log file from the host tomorrow. I'm a bit overwhelmed atm but ty all for the tips! Please check back on tuesday evening :D Thank you very much for your help and time!

1 Like

Hey there!
I've managed to fix the problem after checking the host side logs myself. (Thank you for that tip btw).
KVM actually logged the issue in the kernel log, which I retrieved using dmesg:

[19700.242249] kvm [14424]: vcpu1 kvm_set_msr_common: MSR_IA32_DEBUGCTLMSR 0x1, nop
[19700.242275] kvm [14424]: vcpu1 unhandled rdmsr: 0x1c9

After brief searching on the web, I've found other posts with people who had the exact same issue:

I've used the workaround shown in the thread above, which is:
"echo 1 > /sys/module/kvm/parameters/ignore_msrs" before VM launch.

My kernel log is filled with msr warnings now but the VM does not crash and the games work perfectly.

[20801.620501] kvm [14737]: vcpu3 kvm_set_msr_common: MSR_IA32_DEBUGCTLMSR 0x1, nop
[20801.620559] kvm [14737]: vcpu3 kvm_set_msr_common: MSR_IA32_DEBUGCTLMSR 0x1, nop
[20806.619426] kvm_get_msr_common: 112316 callbacks suppressed
[20806.619428] kvm [14737]: vcpu1 ignored rdmsr: 0x1c9
[20806.619430] kvm [14737]: vcpu1 ignored rdmsr: 0x680
[20806.619431] kvm [14737]: vcpu1 ignored rdmsr: 0x6c0
[20806.619436] kvm_set_msr_common: 37433 callbacks suppressed
[20806.619437] kvm [14737]: vcpu1 kvm_set_msr_common: MSR_IA32_DEBUGCTLMSR 0x1, nop
[20806.619457] kvm [14737]: vcpu1 ignored rdmsr: 0x1c9
[20806.619458] kvm [14737]: vcpu1 ignored rdmsr: 0x680
[20806.619459] kvm [14737]: vcpu1 ignored rdmsr: 0x6c0
[20806.619481] kvm [14737]: vcpu1 kvm_set_msr_common: MSR_IA32_DEBUGCTLMSR 0x1, nop
[20806.619488] kvm [14737]: vcpu1 ignored rdmsr: 0x1c9
[20806.619489] kvm [14737]: vcpu1 ignored rdmsr: 0x680
[20806.619490] kvm [14737]: vcpu1 ignored rdmsr: 0x6c0
[20806.619609] kvm [14737]: vcpu1 kvm_set_msr_common: MSR_IA32_DEBUGCTLMSR 0x1, nop
[20806.619645] kvm [14737]: vcpu1 ignored rdmsr: 0x1c9
[20806.619697] kvm [14737]: vcpu1 kvm_set_msr_common: MSR_IA32_DEBUGCTLMSR 0x1, nop
[20806.619769] kvm [14737]: vcpu1 kvm_set_msr_common: MSR_IA32_DEBUGCTLMSR 0x1, nop
[20806.619797] kvm [14737]: vcpu1 kvm_set_msr_common: MSR_IA32_DEBUGCTLMSR 0x1, nop
[20806.619820] kvm [14737]: vcpu1 kvm_set_msr_common: MSR_IA32_DEBUGCTLMSR 0x1, nop

If there is a cleaner solution I am definitely interested.
Thank you for your time and help!

2 Likes

Maybe once your distribution / you upgrade to a new kernel it might work without.
Glad it worked out.
& May the logs be with you