Windows 10 wil not install using qemu-system-x86_64 Steps to reproduce install virt-manager and ovmf if nopt already there copy windows and virtio iso files to /var/lib/libvirt/images Use virt-manager from local machine to create your VMs with the disk, CPUs and memory required Select customize configuration then select OVMF(UEFI) instead of seabios set first CDROM to the windows installation iso (enable in boot options) add a second CDROM and load with the virtio iso change spice display to VNC Always get a security error from windows and it fails to launch the installer (works on RHEL and Fedora) I tried updating the qemu version from Focals 4.2 to Groovy 5.0 which was of no help This bug is missing log files that will aid in diagnosing the problem. While running an Ubuntu kernel (not a mainline or third-party kernel) please enter the following command in a terminal window: apport-collect 1915063 and then change the status of the bug to 'Confirmed'. If, due to the nature of the issue you have encountered, you are unable to run this command, please add a comment stating that fact and change the bug status to 'Confirmed'. This change has been made by an automated script, maintained by the Ubuntu Kernel Team. apport information apport information apport information apport information apport information apport information apport information apport information apport information apport information apport information apport information apport information apport information apport information apport information apport information apport information We believe that the latest version of Windows doesn't play nice with the older version of QEMU - it seems Windows is broken somewhere between 4.2.0-2 and 5.0.0-6 on AMD Ryzen based processors (which is what we have on the P620). What are the recommendations for the best way for a Ubuntu customer to get going again, with an updated version of QEMU? I'm subscribing Christian to this bug, who is our QEMU expert. Hi, I was just recently for a different case installing a Win10 guest and had the ISOs available. So I was trying to install an OVMF based one through virt-manager as you asked. ISOs - win10 20H2_v2 - virtio iso 0.1.190 I used the default "new guest" of virt-manager and then went into "customize before install" to also add the virtio drivers and select the OVMF mode. BTW I'd not expect that providing the virtio ISO is related to triggering (or not triggering the bug). If you could confirm that it happens without that as well it would make reproducing this a little bit easier. The default config uses SATA. Info: If the ISO is not auto-boointg (depends on some setup detail e.g. how you add your extra CD images) you can still manually load the Windows EFI loader like: FS0: cd EFI cd BOOT BOOTX64.EFI I started my tests on 21.04 Hirsute as that is what I had around. qemu 1:5.2+dfsg-6ubuntu2 virt-manager 1:3.2.0-3 ovmf 2020.11-2 That started up the installer just fine no matter if I used SATA or virtio for the root disk. Next I tried Focal (as reported) qemu 1:4.2-3ubuntu6.14 virt-manager 1:2.2.1-3ubuntu2.1 ovmf 0~20191122.bd85bf54-2ubuntu3.1 That also started the windows installer without an error. Therefore I can't confirm your issue (yet) and will set this to incomplete. Have you in the meantime found more details about what exactly makes the issue trigger/pass for you? In regard your further comments and for clarification: - @Mark: I don't have a Ryzen based processor thou, so your case could still be absolutely valid, yet I can't confirm/deny at the time. Do you have any more data showing that it is processor dependent? - David said 5.0 didn't help while Mark said between .2.0-2 and 5.0.0-6 it is fixed. Are we sure you all talk about the same bug? For those that want/can try a new version give the virt-stack from [1] a try, if that resolves it for you we can look fox fixes in between those versions. - David you said "get a security error from windows" can you be more specific about the error that you get? That will also help to check if you two are facing the same issue. [1]: https://launchpad.net/~canonical-server/+archive/ubuntu/server-backports I am not using a virtio based drive so that should not be par of the issue, I normally do not use the virtio iso until windows is installed to clear errors in the device manager I tried using even the version 5.2 from the hirsute release and that also is not working As a test I tried doing this from an Intel based machine and it does install correctly using even the default version of qemu-system_x64 from focal Attaching a screen show of the error I get when installing on an AMD Ryzen Threadripper processor Thanks David, I have no threadripper around atm, I think I can next week get hands on an EPYC Rome, but that isn't 100% the same. But gladly you tried this on the latest qemu 5.2 and since it is failing there as well it might be worth to also report it upstream. That is a great community which might have ran things on a threadripper already and be able to point us to a qemu/kernel fix - or at least an existing discussions abut it. For now I'm adding a qemu task here which will mirror this case to the mailing list. I was playing around with this and find that if I change the Configuration under CPUs from the default (uncheck "Copy host CPU configuration") and select qemu64 in the Model drop down box I can get it to work That is awesome David, qemu64 is like a very low common denominator with only very basic CPU features. While "copy host" means "enable all you can". We can surely work with that a bit, but until I get access to the same HW I need you to do it. If you run in a console `$virsh domcapabilities` it will spew some XML at you. One of the sections will be for "host-model". In my case that looks like Skylake-Client-IBRS Intel ... That means a names CPU type (the one that is closest to what you have) and some feature additionally enabled/disabled. If you could please post the full output you have, that can be useful. From there you could go two steps. 1. as you see in my example it will list some cpu features on top of the named type. If you remove them one by one you might be able to identify the single-cpu featute that breaks in your case. 2. The named CPU that you have also has a representation, it can be found in /usr/share/libvirt/cpu_map... That ill list all the CPU features that make up the named type. If #1 wasn't sufficient, you can now add those to your guest definition one by one in disabled state, example A description of the underlying mechanism is here https://libvirt.org/formatdomain.html#cpu-model-and-topology /usr/bin/qemu-system-x86_64 kvm pc-i440fx-hirsute x86_64 efi /usr/share/OVMF/OVMF_CODE_4M.fd rom pflash yes no no EPYC-Rome AMD qemu64 qemu32 phenom pentium3 pentium2 pentium n270 kvm64 kvm32 coreduo core2duo athlon Westmere-IBRS Westmere Skylake-Server-noTSX-IBRS Skylake-Server-IBRS Skylake-Server Skylake-Client-noTSX-IBRS Skylake-Client-IBRS Skylake-Client SandyBridge-IBRS SandyBridge Penryn Opteron_G5 Opteron_G4 Opteron_G3 Opteron_G2 Opteron_G1 Nehalem-IBRS Nehalem IvyBridge-IBRS IvyBridge Icelake-Server-noTSX Icelake-Server Icelake-Client-noTSX Icelake-Client Haswell-noTSX-IBRS Haswell-noTSX Haswell-IBRS Haswell EPYC-Rome EPYC-IBPB EPYC Dhyana Conroe Cascadelake-Server-noTSX Cascadelake-Server Broadwell-noTSX-IBRS Broadwell-noTSX Broadwell-IBRS Broadwell 486 disk cdrom floppy lun ide fdc scsi virtio usb sata virtio virtio-transitional virtio-non-transitional sdl vnc spice subsystem default mandatory requisite optional usb pci scsi default vfio virtio virtio-transitional virtio-non-transitional random egd Ok, so you should be able to drop these lines one by one: If that does not yet make it work, add those one by one (removing the features of the named type) Eventually I'd hope you identify one feature (re add everything but this to verify) that breaks it. Any chance to do this iterative test? You could also "bisect" this list if you want to save some time. On Sat, 03 Apr 2021 16:52:13 -0000 Christian Ehrhardt 