Fedora 36, Windows 11 Guest In QEMU/KVM keeps crashing on startup

Hello, I’m still relatively new here.

I hope I'm not breaking any rules here, as I recognize that this may not necessarily even be a Fedora issue, but I'm just asking to see if anyone might have a possible solution.

I've installed QEMU/KVM to use Windows 11 in a virtual machine. I specifically followed this guide, and utilized the virt-manager to set it up. The i440fx chipset wouldn't work due to some pci vs pcie issues, so I stuck with the Q35 chipset.

However, I keep running into this issue where upon starting it up through virt-manager, I run into a BSOD, where it states a system_thread_exception_not_handled had occured. On top of this, I noticed that under the OS information, that:

Error launching libguestfs appliance: /var/lib/libvirt/images/win11.qcow2: Permission denied

What i've done so far includes:

  • Ensuring that SVM is enabled properly within my BIOS.
  • Making sure that kvm_amd is properly loaded.
    [dexk@fedora36 ~]$ lsmod | grep kvm
    kvm_amd               151552  2
    kvm                  1073152  1 kvm_amd
    irqbypass              16384  1 kvm
    ccp                   114688  1 kvm_amd
    
  • Going through the boot menu. and testing all of the possible boot options I have, being the SATA and CD-ROM1&2, separately and together. A BSOD appears every time when booting into the CDROM that holds the Windows 11 iso.
  • Switching from OVMF_CODE.fd to OVMF_CODE.secboot.fd
  • Deleting and redownloading the virtio and Windows11.iso at least 3 times each.
  • Attempting to install Windows 10 according to this guide, it still results in the same exception.
  • Attempting to install Linux Mint with no guide. It worked perfectly fine. I can confirm that installing a good, well-known Linux OS works fine.

Here is my specs from neofetch, and I can get inxi -Fzx if requested.

OS: Fedora Linux 36 (Workstation Editi 
Host: AB350-Gaming 3 
Kernel: 5.18.5-200.fc36.x86_64 
Uptime: 33 mins 
Packages: 2260 (rpm), 17 (flatpak) 
Shell: bash 5.1.16 
Resolution: 2560x1440 
DE: GNOME 42.2 
WM: Mutter 
WM Theme: Adwaita 
Terminal: gnome-terminal 
CPU: AMD Ryzen 5 1600 (12) @ 3.200GHz 
GPU: NVIDIA GeForce GTX 970 
Memory: 3038MiB / 15800MiB 

I would also post my QEMU configurations for the file, but I don’t know how to do that exactly in html.

All advice is welcome.

I suggest using Windows 10 instead since it doesn’t have the higher system requirements of windows 11 and will open most windows apps just fine. It worked for me for 2D CAD and ODIN flash tools for my samsung phone. You may want to look into GPU passthrough if you intend to do any 3D workload.

Hello.

I apologize if I didn't mentioned it in my original post, but Windows 10 did not actually end up working.

I'm not sure if it's necessarily a Windows/Microsoft issue, as I feel that there maybe something within Fedora that's preventing the virtual machine from booting up correctly. On top of this, there are videos of Windows working correctly as a guest. Do you know if there's anything wrong with the instructions I initially linked, or if there is a setting that I'm possibly missing in either Windows 10 or 11?

What is the error mentioned in the BSOD?

This exception right here.

Try adding this to your GRUB boot options:
kvm.ignore_msrs=1

Like this:
sudo grubby --update-kernel=ALL --args='kvm.ignore_msrs=1'

Then reboot.

source

3 Likes

Wow. Thank you so much! I thought you initially meant go through the grub boot order file and rebuild it, but that wasn’t quite right.

Then I saw the ‘sudo grubby’ command you provided and it, just made both Windows 10 and Windows 11 work perfectly! Thank you so much, I genuinely haven’t been happy trying to troubleshoot this over the course of DAYS, and you solved it in minutes.

1 Like

You’re welcome :slight_smile:

3 posts were split to a new topic: Windows 11 guest not booting

I have had the same issue with Rocky Linux 9 since trying to install Windows 11 23H2. 21H2 has worked just fine but 23H2 would run for a bit and then crash and the same way.

Thanks for posting this workaround.