Hide Forgot
Created attachment 1061193 [details] BSOD screenshot Description of problem: In RHEL 6.7, when I tried to create a Win10-Enterprise virtual machine, after the VM boots off the iso, there is a BSOD with error message "Your PC ran into a problem and needs to restart." and Error Code: SYSTEM_THREAD_EXCEPTION_NOT_HANDLED. The Win10 VM gets created with RHEL 7.1 (as reported by customer) or with Fedora 22 host. Version-Release number of selected component (if applicable): qemu-kvm-0.12.1.2-2.479.el6.x86_64 virt-manager-0.9.0-29.el6.x86_64 en_windows_10_enterprise_x64_dvd_6851151.iso => Win10 Enterprise ISO used How reproducible: 100% Steps to Reproduce: 1. Create a Win10 VM through virt-manager by going through the steps at "Create New VirtualMachine" 2. Set 4096 MB RAM and 40GB harddisk space and VNC graphics display and vga driver and to boot from Win10 ISO file. 3. Power on the VM. Guest BSODs within a couple of seconds. Actual results: BSOD Expected results: VM goes through windows installation process and Win10 VM gets created. Additional info:
This is most likely qemu-kvm bug, moving it to that component.
Can you try a debug build ? That will show the error code which would be helpful.
should be the same issue with https://bugzilla.redhat.com/show_bug.cgi?id=1223317
(In reply to lijin from comment #5) > should be the same issue with > https://bugzilla.redhat.com/show_bug.cgi?id=1223317 Note that bug 1223317 is a RHEL7 bug. If we can get the error code from the BSOD, we can verify if it's the same bug.
(In reply to Bandan Das from comment #4) > Can you try a debug build ? That will show the error code which would be > helpful. Did you try to reproduce the bug? What are the results?
(In reply to Bandan Das from comment #6) > (In reply to lijin from comment #5) > > should be the same issue with > > https://bugzilla.redhat.com/show_bug.cgi?id=1223317 > > Note that bug 1223317 is a RHEL7 bug. If we can get the error code from the > BSOD, we can verify if it's the same bug. Is the 1223317 regression? It works on rhel 7.1
(In reply to David Blechter from comment #7) > (In reply to Bandan Das from comment #4) > > Can you try a debug build ? That will show the error code which would be > > helpful. > > Did you try to reproduce the bug? What are the results? Sorry I don't have a setup handy :( However, I found a preview build with debug enabled. Hopefully, this should be enough to confirm if it's the same as bug 1223317. Please download en_windows_10_pro_insider_preview_10074_debug_checked_x64_dvd_6651358.iso from the virtlab415.virt.bos.redhat.com:/sos. Please check if any of these workarounds work for you - 1. Boot qemu with -cpu Nehalem,+fsgsbase 2. Load the kvm module with ignore_msrs=1 -> rmmod kvm && modprobe kvm ignore_msrs=1
Created attachment 1062738 [details] Debug Build BSOD
> Please download > en_windows_10_pro_insider_preview_10074_debug_checked_x64_dvd_6651358.iso > from the virtlab415.virt.bos.redhat.com:/sos. I tried this and have attached screenshot of BSOD with debug build. > > Please check if any of these workarounds work for you - > > 1. Boot qemu with -cpu Nehalem,+fsgsbase I tried through virt-manager by changing in Processor options and BSOD still happened > 2. Load the kvm module with ignore_msrs=1 -> > rmmod kvm && modprobe kvm ignore_msrs=1 There was no difference with this either.
(In reply to Swapna Krishnan from comment #11) > > Please download > > en_windows_10_pro_insider_preview_10074_debug_checked_x64_dvd_6651358.iso > > from the virtlab415.virt.bos.redhat.com:/sos. > > I tried this and have attached screenshot of BSOD with debug build. > > > > > Please check if any of these workarounds work for you - > > > > 1. Boot qemu with -cpu Nehalem,+fsgsbase > > I tried through virt-manager by changing in Processor options and BSOD still > happened > > > 2. Load the kvm module with ignore_msrs=1 -> > > rmmod kvm && modprobe kvm ignore_msrs=1 > > There was no difference with this either. Atleast one of the error codes, 0xc0000096 is bug 1232894 but that behavior afaik isn't applicable anymorein the latest Windows10 release. The rest are different and I don't think are related to bug 1223317 Vadim is looking into this, added him to cc list,
(In reply to Bandan Das from comment #9) > (In reply to David Blechter from comment #7) > > (In reply to Bandan Das from comment #4) > > > Can you try a debug build ? That will show the error code which would be > > > helpful. > > > > Did you try to reproduce the bug? What are the results? > > Sorry I don't have a setup handy :( However, I found a preview build with > debug enabled. Hopefully, this should be enough to confirm if it's the same > as bug 1223317. > > Please download > en_windows_10_pro_insider_preview_10074_debug_checked_x64_dvd_6651358.iso > from the virtlab415.virt.bos.redhat.com:/sos. > > Please check if any of these workarounds work for you - > > 1. Boot qemu with -cpu Nehalem,+fsgsbase Guest bsod without "-cpu Nehalem,+fsgsbase" on rhel6; I tried with "-cpu Nehalem,+fsgsbase",win10-32 can be boot/installed correctly,no bsod. package info: qemu-kvm-rhev-0.12.1.2-2.479.el6.x86_64 kernel-2.6.32-572.el6.x86_64 seabios-0.6.1.2-30.el6.x86_64 qemu command: /usr/libexec/qemu-kvm -name 109RNGW10D32AIC -enable-kvm -m 3G -smp 4 -uuid c2575de7-9236-425d-8adf-5f07a6d46ddd -nodefconfig -nodefaults -chardev socket,id=charmonitor,path=/tmp/109RNGW10D32AIC,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=localtime,driftfix=slew -boot order=cd,menu=on -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -drive file=109RNGW10D32AIC,if=none,id=drive-ide0-0-0,format=raw,serial=mike_cao,cache=none -device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 -drive file=en_windows_10_enterprise_x86_dvd_6851156.iso,if=none,media=cdrom,id=drive-ide0-1-0,readonly=on,format=raw -device ide-drive,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0 -drive file=109RNGW10D32AIC.vfd,if=none,id=drive-fdc0-0-0,format=raw,cache=none -global isa-fdc.driveA=drive-fdc0-0-0 -netdev tap,script=/etc/qemu-ifup,downscript=no,id=hostnet0 -device rtl8139,netdev=hostnet0,id=net0,mac=00:52:6e:4b:05:de,bus=pci.0,addr=0x3 -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=isa_serial0 -device usb-tablet,id=input0 -vnc 0.0.0.0:0 -vga cirrus -cpu Nehalem,+fsgsbase
(In reply to lijin from comment #13) > (In reply to Bandan Das from comment #9) > > (In reply to David Blechter from comment #7) > > > (In reply to Bandan Das from comment #4) > > > > Can you try a debug build ? That will show the error code which would be > > > > helpful. > > > > > > Did you try to reproduce the bug? What are the results? > > > > Sorry I don't have a setup handy :( However, I found a preview build with > > debug enabled. Hopefully, this should be enough to confirm if it's the same > > as bug 1223317. > > > > Please download > > en_windows_10_pro_insider_preview_10074_debug_checked_x64_dvd_6651358.iso > > from the virtlab415.virt.bos.redhat.com:/sos. > > > > Please check if any of these workarounds work for you - > > > > 1. Boot qemu with -cpu Nehalem,+fsgsbase > > Guest bsod without "-cpu Nehalem,+fsgsbase" on rhel6; > I tried with "-cpu Nehalem,+fsgsbase",win10-32 can be boot/installed > correctly,no bsod. Thank you for testing. The complication here is that backporting the rhel7 fix means creating a new machine type for rhel6...Sigh..
(In reply to Bandan Das from comment #14) > Thank you for testing. The complication here is that backporting the rhel7 > fix means creating a new machine type for rhel6...Sigh.. If we are not changing any defaults and already require the user to change something in the VM configuration explicitly, a new machine-type is not necessary. We can just let the user explicitly enable +fsgsbase, instead.
I try win10-64 guest today,guest will bsod with or without "-cpu Nehalem,+fsgsbase"; "-cpu Nehalem,+fsgsbase" only works for win10-32,not win10-64 package info: qemu-kvm-rhev-0.12.1.2-2.479.el6_7.2.x86_64 kernel-2.6.32-573.el6.x86_64 seabios-0.6.1.2-30.el6.x86_64 qemu command: /usr/libexec/qemu-kvm -name 105RNGW10D64XPQ -enable-kvm -m 3G -smp 4 -uuid 9a9ac631-454e-4761-96d9-2791643c506c -nodefconfig -nodefaults -chardev socket,id=charmonitor,path=/tmp/105RNGW10D64XPQ,server,nowait -mon chardev=charmonitor,id=monitor,mode=control -rtc base=localtime,driftfix=slew -boot order=cd,menu=on -device piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -drive file=105RNGW10D64XPQ,if=none,id=drive-ide0-0-0,format=raw,serial=mike_cao,cache=none -device ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 -drive file=en_windows_10_enterprise_x64_dvd_6851151.iso,if=none,media=cdrom,id=drive-ide0-1-0,readonly=on,format=raw -device ide-drive,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0 -drive file=105RNGW10D64XPQ.vfd,if=none,id=drive-fdc0-0-0,format=raw,cache=none -global isa-fdc.driveA=drive-fdc0-0-0 -netdev tap,script=/etc/qemu-ifup,downscript=no,id=hostnet0 -device rtl8139,netdev=hostnet0,id=net0,mac=00:52:55:7b:cd:da,bus=pci.0,addr=0x3 -chardev pty,id=charserial0 -device isa-serial,chardev=charserial0,id=isa_serial0 -device usb-tablet,id=input0 -vnc 0.0.0.0:1 -vga cirrus -cpu Nehalem,+fsgsbase -object rng-random,filename=/dev/urandom,id=rng0 -device virtio-rng-pci,rng=rng0
(In reply to lijin from comment #16) > I try win10-64 guest today,guest will bsod with or without "-cpu > Nehalem,+fsgsbase"; > "-cpu Nehalem,+fsgsbase" only works for win10-32,not win10-64 Did you set ignore_msrs=1 ? You probably need that too. > package info: > qemu-kvm-rhev-0.12.1.2-2.479.el6_7.2.x86_64 > kernel-2.6.32-573.el6.x86_64 > seabios-0.6.1.2-30.el6.x86_64 > > qemu command: > /usr/libexec/qemu-kvm -name 105RNGW10D64XPQ -enable-kvm -m 3G -smp 4 -uuid > 9a9ac631-454e-4761-96d9-2791643c506c -nodefconfig -nodefaults -chardev > socket,id=charmonitor,path=/tmp/105RNGW10D64XPQ,server,nowait -mon > chardev=charmonitor,id=monitor,mode=control -rtc > base=localtime,driftfix=slew -boot order=cd,menu=on -device > piix3-usb-uhci,id=usb,bus=pci.0,addr=0x1.0x2 -drive > file=105RNGW10D64XPQ,if=none,id=drive-ide0-0-0,format=raw,serial=mike_cao, > cache=none -device > ide-drive,bus=ide.0,unit=0,drive=drive-ide0-0-0,id=ide0-0-0 -drive > file=en_windows_10_enterprise_x64_dvd_6851151.iso,if=none,media=cdrom, > id=drive-ide0-1-0,readonly=on,format=raw -device > ide-drive,bus=ide.1,unit=0,drive=drive-ide0-1-0,id=ide0-1-0 -drive > file=105RNGW10D64XPQ.vfd,if=none,id=drive-fdc0-0-0,format=raw,cache=none > -global isa-fdc.driveA=drive-fdc0-0-0 -netdev > tap,script=/etc/qemu-ifup,downscript=no,id=hostnet0 -device > rtl8139,netdev=hostnet0,id=net0,mac=00:52:55:7b:cd:da,bus=pci.0,addr=0x3 > -chardev pty,id=charserial0 -device > isa-serial,chardev=charserial0,id=isa_serial0 -device usb-tablet,id=input0 > -vnc 0.0.0.0:1 -vga cirrus -cpu Nehalem,+fsgsbase -object > rng-random,filename=/dev/urandom,id=rng0 -device virtio-rng-pci,rng=rng0
(In reply to Bandan Das from comment #17) > (In reply to lijin from comment #16) > > I try win10-64 guest today,guest will bsod with or without "-cpu > > Nehalem,+fsgsbase"; > > "-cpu Nehalem,+fsgsbase" only works for win10-32,not win10-64 > > Did you set ignore_msrs=1 ? You probably need that too. still not work after load the kvm module with ignore_msrs=1
(In reply to lijin from comment #18) > (In reply to Bandan Das from comment #17) > > (In reply to lijin from comment #16) > > > I try win10-64 guest today,guest will bsod with or without "-cpu > > > Nehalem,+fsgsbase"; > > > "-cpu Nehalem,+fsgsbase" only works for win10-32,not win10-64 > > > > Did you set ignore_msrs=1 ? You probably need that too. > > still not work after load the kvm module with ignore_msrs=1 Can you get a list of what error codes you are getting from Windows ? You probably need a debug build for that.
(In reply to Bandan Das from comment #19) > (In reply to lijin from comment #18) > > (In reply to Bandan Das from comment #17) > > > (In reply to lijin from comment #16) > > > > I try win10-64 guest today,guest will bsod with or without "-cpu > > > > Nehalem,+fsgsbase"; > > > > "-cpu Nehalem,+fsgsbase" only works for win10-32,not win10-64 > > > > > > Did you set ignore_msrs=1 ? You probably need that too. > > > > still not work after load the kvm module with ignore_msrs=1 > > Can you get a list of what error codes you are getting from Windows ? You > probably need a debug build for that. it's the same bsod code with attachment "BSOD screenshot". change cpu to "Westmere" does not hit this issue,both win10-32 and win10-64 can install/boot correctly.
fsgsbase does the trick with 32 bit windows so we are hitting more than just the problem from 1223317. Can you get a `trace-cmd record -e 'kvm:*'`? (We might be able to see a #GP.) Thanks.
QE run Windows 10 sanity test on rhel6 host recently(boot win10 on rhel6 host with different cpu model),the detailed info can be checked in page https://mojo.redhat.com/docs/DOC-1052943. In this page,win10-64 can boot normally with "-cpu Nehalem,+fsgsbase". I'm not sure why on different host,win10-64 guest behaves differently,you can get the detailed host info on that page too. Anything else,please let me know.
QE have finished following windows 10 testing on rhel6.7-z and rhel7.2 with machine type rhel6.5.0,all tests passed. 1.virtio-win-1.8.0-4 Function Test on RHEL6.7-z host - PASS 2.virtio-win-1.8.0-4 WHQL CHAOS Test on RHEL6.7-z host - PASS 3.virtio-win-1.8.0-4 Sanity Test on RHEL7.2 host - PASS 4.kvm functional base testing by autotest- PASS For the details,please refer to "Windows 10 Support Test Report" https://mojo.redhat.com/docs/DOC-1054973
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHBA-2016-0815.html
I think using fsgsbase is risky if the host does not support it. Could we use erms instead? Unlike fsgsbase it doesn't specify the existence of any instruction. Also, perhaps we can mention that the cause is a bug in Windows 10...
The docs say: > To be able to use Windows 10 guests on Legacy Intel Core 2 processors (also > known as Penryn) or Intel Xeon 55xx and 75xx processor families (also known as > Nehalem), add the following flag to the Domain XML file, with either Penryn or > Nehalem as MODELNAME: This allows you to specify a (modified) Penryn or Nehalem CPU model that runs Windows 10, but you'll still need an Ivy Bridge or newer CPU on the host. Using the erms flag would allow you to use Windows 10 on Penryn or Nehalem.
*** Bug 1293245 has been marked as a duplicate of this bug. ***