Bug 1027582 - some new windows OS cann't be boot up with Conroe or Opteron_G1 cpu mode in Haswell/Vishera host
Summary: some new windows OS cann't be boot up with Conroe or Opteron_G1 cpu mode in H...
Keywords:
Status: CLOSED NOTABUG
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: qemu-kvm
Version: 6.5
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: rc
: ---
Assignee: Eduardo Habkost
QA Contact: Virtualization Bugs
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-11-07 06:58 UTC by Sibiao Luo
Modified: 2014-08-08 14:23 UTC (History)
13 users (show)

Fixed In Version:
Doc Type: Known Issue
Doc Text:
Microsoft Windows 8.1 and Microsoft Windows Server 2012 R2 require some CPU features, for example Compare Exchange 8Byte and Compare Exchange 16Byte, which are not present in all qemu-kvm CPU models. As a consequence, Microsoft Windows 8.1 and Microsoft Windows Server 2012 R2 guests do not boot if they use the following CPU model definitions: Opteron_G1, Conroe, and kvm64. To work around this problem, use CPU models that include the features required by Microsoft Windows 8.1 and Microsoft Windows Server 2012 R2, for example Penryn, Nehalem, Westmere, SandyBridge, Haswell, Opteron_G2, Opteron_G3, Opteron_G4, or Opteron_G5.
Clone Of:
Environment:
Last Closed: 2014-04-16 19:16:04 UTC


Attachments (Terms of Use)
Win8.1-32bit_G5&G4_Screenshot. (27.11 KB, image/png)
2013-11-07 07:00 UTC, Sibiao Luo
no flags Details
Win8-32bit-G5&G4-Screenshot. (27.80 KB, image/png)
2013-11-07 07:01 UTC, Sibiao Luo
no flags Details

Description Sibiao Luo 2013-11-07 06:58:23 UTC
Description of problem:
it can install Win8.1-32 and Win8-32 guest with Opteron_G5 cpu mode in AMD Vishera host but fail to reboot, also tried the G4 cpu mode also fail to boot Win8.1-32 and Win8-32 guest, Win8.1-32 guest with 0x0000000A Error Code and Win8-32 guest with 0x0000007F 0x0000000A Error Code. But Win8.1-32 and Win8-32 guest can be boot up with Opteron_G3/G2/G1 and cpu64-rhel6 cpu mode in AMD Vishera host.

Version-Release number of selected component (if applicable):
Host info:
kernl-2.6.32-429.el6.x86_64
qemu-kvm-0.12.1.2-2.415.el6.x86_64
seabios-0.6.1.2-28.el6.x86_64

How reproducible:
100%

Steps to Reproduce:
1.install Win8.1-32 and Win8-32 guest with Opteron_G5 cpu mode in AMD Vishera host.
2.boot Win8.1-32 and Win8-32 guest with Opteron_G5/G4 cpu mode in AMD Vishera host.

Actual results:
after step 1, it can complete installation, but fail to boot with Opteron_G5/G4 cpu mode in AMD Vishera host, Win8.1-32 guest with 0x0000000A Error Code and Win8-32 guest with 0x0000007F 0x0000000A Error Code. 
I will attach the screenshot later.

Expected results:
it can boot Win8.1-32 and Win8-32 guest with Opteron_G5/G4 cpu mode in AMD Vishera host.

Additional info:
processor	: 7
vendor_id	: AuthenticAMD
cpu family	: 21
model		: 2
model name	: AMD FX(tm)-8350 Eight-Core Processor           
stepping	: 0
cpu MHz		: 1400.000
cache size	: 2048 KB
physical id	: 0
siblings	: 8
core id		: 7
cpu cores	: 4
apicid		: 23
initial apicid	: 7
fpu		: yes
fpu_exception	: yes
cpuid level	: 13
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx mmxext fxsr_opt pdpe1gb rdtscp lm constant_tsc rep_good nonstop_tsc extd_apicid aperfmperf pni pclmulqdq monitor ssse3 fma cx16 sse4_1 sse4_2 popcnt aes xsave avx f16c lahf_lm cmp_legacy svm extapic cr8_legacy abm sse4a misalignsse 3dnowprefetch osvw ibs xop skinit wdt lwp fma4 tce nodeid_msr tbm topoext perfctr_core cpb npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold bmi1
bogomips	: 7982.61
TLB size	: 1536 4K pages
clflush size	: 64
cache_alignment	: 64
address sizes	: 48 bits physical, 48 bits virtual
power management: ts ttp tm 100mhzsteps hwpstate cpb eff_freq_ro

Comment 1 Sibiao Luo 2013-11-07 06:59:57 UTC
My qemu-kvm command line:
# /usr/libexec/qemu-kvm -M pc -S -cpu Opteron_G5 -enable-kvm -m 2048 -smp 2,sockets=2,cores=1,threads=1 -no-kvm-pit-reinjection -usb -device usb-tablet,id=input0 -name Win8.1-32 -uuid 990ea161-6b67-47b2-b803-19fb01d30d32 -rtc base=localtime,clock=host,driftfix=slew -device virtio-serial-pci,id=virtio-serial0,max_ports=16,vectors=0,bus=pci.0,addr=0x3 -chardev socket,id=channel1,path=/tmp/helloworld1,server,nowait -device virtserialport,chardev=channel1,name=com.redhat.rhevm.vdsm,bus=virtio-serial0.0,id=port1 -chardev socket,id=channel2,path=/tmp/helloworld2,server,nowait -device virtserialport,chardev=channel2,name=com.redhat.rhevm.vdsm,bus=virtio-serial0.0,id=port2 -drive file=/home/Win8.1-32.qcow2,if=none,id=drive-virtio-disk,format=qcow2,cache=none,aio=native,werror=stop,rerror=stop -device virtio-blk-pci,vectors=0,bus=pci.0,addr=0x4,scsi=off,drive=drive-virtio-disk,id=virtio-disk,bootindex=1 -netdev tap,id=hostnet0,vhost=on,script=/etc/qemu-ifup -device e1000,netdev=hostnet0,id=virtio-net-pci0,mac=00:01:02:B6:40:22,bus=pci.0,addr=0x5 -device virtio-balloon-pci,id=ballooning,bus=pci.0,addr=0x6 -global PIIX4_PM.disable_s3=0 -global PIIX4_PM.disable_s4=0 -k en-us -boot menu=on -vnc :2 -spice disable-ticketing,port=5932 -monitor stdio -drive file=/home/my-data-disk3.qcow2,if=none,id=drive-data-disk1,format=qcow2,cache=none,aio=native,werror=stop,rerror=stop -device virtio-blk-pci,vectors=0,bus=pci.0,addr=0x7,scsi=off,drive=drive-data-disk1,id=data-disk1 -drive file=/home/my-data-disk4.qcow2,if=none,id=drive-data-disk2,format=qcow2,cache=none,aio=native,werror=stop,rerror=stop -device virtio-scsi-pci,bus=pci.0,addr=0x8,id=scsi0 -device scsi-hd,drive=drive-data-disk2,id=data-disk2,bus=scsi0.0 -drive file=/usr/share/virtio-win/virtio-win_x86.vfd,if=none,id=drive-fdc0-0-0,readonly=on,format=raw -global isa-fdc.driveA=drive-fdc0-0-0

Comment 2 Sibiao Luo 2013-11-07 07:00:42 UTC
Created attachment 820894 [details]
Win8.1-32bit_G5&G4_Screenshot.

Comment 3 Sibiao Luo 2013-11-07 07:01:18 UTC
Created attachment 820895 [details]
Win8-32bit-G5&G4-Screenshot.

Comment 4 Sibiao Luo 2013-11-07 07:02:32 UTC
My virtio-win driver version: virtio-win-1.6.7-2.el6.noarch

Comment 5 Sibiao Luo 2013-11-07 07:13:48 UTC
Also tried the Intel Haswell Host and AMD Vishera Host, I listed the testing results as following matrix:

Host info:
kernl-2.6.32-429.el6.x86_64
qemu-kvm-0.12.1.2-2.415.el6.x86_64
seabios-0.6.1.2-28.el6.x86_64
Guest info:
virtio-win-1.6.7-2.el6.noarch

AMD Vishera Host:
Windows Guest |Opteron_G5 Opteron_G4 Opteron_G3  ..G2   ..G1   cpu64-rhel6
--------------+----------+----------+----------+------+-------+-----------
Win2012-R2    |  Pass        Pass       Pass     Pass   *Fail     Pass
Win8.1-32     |0x0000000A 0x0000000A    Pass     Pass    Pass     Pass
Win8.1-64     |  Pass        Pass       Pass     Pass   *Fail     pass
Win2012-64    |  Pass        Pass       Pass     Pass    Pass     Pass
Win8-32       |0x0000007F 0x0000007F    Pass     Pass    Pass     Pass
Win2k8r2-sp1  |  Pass        Pass       Pass     Pass    Pass     Pass  
Win7-64-sp1   |  Pass        Pass       Pass     Pass    Pass     Pass  
Win2008-32-sp2|  Pass        Pass       Pass     Pass    Pass     Pass   

Intel Haswell Host:
Windows Guest |Haswell SandyBridge Westmere Nehalem Penryn Conroe cpu64-rhel6
--------------+-------+-----------+--------+-------+------+------+------------
Win2012-R2    |   Pass    Pass       Pass     Pass   Pass   *Fail     Pass
Win8.1-32     |   Pass    Pass       Pass     Pass   Pass   *Fail     Pass 
Win8.1-64     |   Pass    Pass       Pass     Pass   Pass   *Fail     Pass 
Win2012-64    |   Pass    Pass       Pass     Pass   Pass    Pass     Pass  
Win8-32       |   Pass    Pass       Pass     Pass   Pass   *Fail     Pass
Win2k8r2-sp1  |   Pass    Pass       Pass     Pass   Pass    Pass     Pass  
Win7-64-sp1   |   Pass    Pass       Pass     Pass   Pass    Pass     Pass
Win2008-32-sp2|   Pass    Pass       Pass     Pass   Pass    Pass     Pass

Best Regards,
sluo

Comment 6 Sibiao Luo 2013-11-07 08:38:36 UTC
(In reply to Sibiao Luo from comment #5)
Hi Eduardo,

   Could you help see the result of comment #5, I install the windows guest with the highest cpu module of each host, and then boot it with all the cpu modules. But some windows guest cann't boot up with Conroe or Opteron_G1 host. Does it a issue, or do i need to separate a new bug to tracing it ?

AMD Vishera Host: Win2012-R2 and Win8.1-64 guest fail to boot with Opteron_G1 cpu mode.
Intel Haswell Host: Win2012-R2, Win8.1-32, Win8.1-64 and Win8-32 guest fail to boot with Conroe cpu mode.

Best Regards,
sluo

Comment 7 Eduardo Habkost 2013-11-07 19:17:10 UTC
(In reply to Sibiao Luo from comment #6)
> (In reply to Sibiao Luo from comment #5)
> Hi Eduardo,
> 
>    Could you help see the result of comment #5, I install the windows guest
> with the highest cpu module of each host, and then boot it with all the cpu
> modules. But some windows guest cann't boot up with Conroe or Opteron_G1
> host. Does it a issue, or do i need to separate a new bug to tracing it ?
> 
> AMD Vishera Host: Win2012-R2 and Win8.1-64 guest fail to boot with
> Opteron_G1 cpu mode.
> Intel Haswell Host: Win2012-R2, Win8.1-32, Win8.1-64 and Win8-32 guest fail
> to boot with Conroe cpu mode.

I have no idea if it is the same issue, or a completely different bug, until we investigate further. We can keep it a single BZ by now, and clone it later if necessary.

Comment 8 Sibiao Luo 2013-11-08 02:33:53 UTC
(In reply to Eduardo Habkost from comment #7)
> (In reply to Sibiao Luo from comment #6)
> > (In reply to Sibiao Luo from comment #5)
> > Hi Eduardo,
> > 
> >    Could you help see the result of comment #5, I install the windows guest
> > with the highest cpu module of each host, and then boot it with all the cpu
> > modules. But some windows guest cann't boot up with Conroe or Opteron_G1
> > host. Does it a issue, or do i need to separate a new bug to tracing it ?
> > 
> > AMD Vishera Host: Win2012-R2 and Win8.1-64 guest fail to boot with
> > Opteron_G1 cpu mode.
> > Intel Haswell Host: Win2012-R2, Win8.1-32, Win8.1-64 and Win8-32 guest fail
> > to boot with Conroe cpu mode.
> 
> I have no idea if it is the same issue, or a completely different bug, until
> we investigate further. We can keep it a single BZ by now, and clone it
> later if necessary.
hmm... The Win2012-R2, Win8.1-64 guest fail to boot with Opteron_G1 cpu mode in AMD Vishera Host and Win2012-R2, Win8.1-32, Win8.1-64, Win8-32 guest fail to boot with Conroe cpu mode in Intel Haswell Host are completely different from bug 1027582, as them did not meet 0x0000000A or 0x0000007F Code Error at all. I just doubt some new windows OS maybe can not be installed on old host, so I cann't make sure they are really a bug at first.
Base on above, I think we can separate a new bug to track it if you can make sure there is really a bugging here, any idea about it ?

Best Regards,
sluo

Comment 9 Sibiao Luo 2013-11-08 02:45:35 UTC
Please refer to the 'Additional info' of comment#0 for the AMD Vishera Host cpu info. And i paste Intel Haswell Host cpu info here.

processor	: 3
vendor_id	: GenuineIntel
cpu family	: 6
model		: 60
model name	: Intel(R) Core(TM) i5-4670T CPU @ 2.30GHz
stepping	: 3
cpu MHz		: 800.000
cache size	: 6144 KB
physical id	: 0
siblings	: 4
core id		: 3
cpu cores	: 4
apicid		: 6
initial apicid	: 6
fpu		: yes
fpu_exception	: yes
cpuid level	: 13
wp		: yes
flags		: fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good xtopology nonstop_tsc aperfmperf pni pclmulqdq dtes64 monitor ds_cpl vmx smx est tm2 ssse3 fma cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm ida arat epb xsaveopt pln pts dts tpr_shadow vnmi flexpriority ept vpid fsgsbase bmi1 hle avx2 smep bmi2 erms invpcid rtm
bogomips	: 4589.86
clflush size	: 64
cache_alignment	: 64
address sizes	: 39 bits physical, 48 bits virtual
power management:

Comment 10 Sibiao Luo 2013-11-08 07:29:22 UTC
(In reply to Sibiao Luo from comment #8)
> (In reply to Eduardo Habkost from comment #7)
> > (In reply to Sibiao Luo from comment #6)
> > > (In reply to Sibiao Luo from comment #5)
> > > Hi Eduardo,
> > > 
> > >    Could you help see the result of comment #5, I install the windows guest
> > > with the highest cpu module of each host, and then boot it with all the cpu
> > > modules. But some windows guest cann't boot up with Conroe or Opteron_G1
> > > host. Does it a issue, or do i need to separate a new bug to tracing it ?
> > > 
> > > AMD Vishera Host: Win2012-R2 and Win8.1-64 guest fail to boot with
> > > Opteron_G1 cpu mode.
> > > Intel Haswell Host: Win2012-R2, Win8.1-32, Win8.1-64 and Win8-32 guest fail
> > > to boot with Conroe cpu mode.
> > 
> > I have no idea if it is the same issue, or a completely different bug, until
> > we investigate further. We can keep it a single BZ by now, and clone it
> > later if necessary.
> hmm... The Win2012-R2, Win8.1-64 guest fail to boot with Opteron_G1 cpu mode
> in AMD Vishera Host and Win2012-R2, Win8.1-32, Win8.1-64, Win8-32 guest fail
> to boot with Conroe cpu mode in Intel Haswell Host are completely different
> from bug 1027582, as them did not meet 0x0000000A or 0x0000007F Code Error
> at all. I just doubt some new windows OS maybe can not be installed on old
> host, so I cann't make sure they are really a bug at first.
> Base on above, I think we can separate a new bug to track it if you can make
> sure there is really a bugging here, any idea about it ?
> 
About 0x0000007F Code Error, we have bug 1002473 to track it. So i modify this bug title to track the the Win2012-R2, Win8.1-64 guest fail to boot with Opteron_G1 cpu mode in AMD Vishera Host and Win2012-R2, Win8.1-32, Win8.1-64, Win8-32 guest fail to boot with Conroe cpu mode in Intel Haswell Host.

Best Regards,
sluo

Comment 11 RHEL Product and Program Management 2013-11-11 07:35:55 UTC
This request was not resolved in time for the current release.
Red Hat invites you to ask your support representative to
propose this request, if still desired, for consideration in
the next release of Red Hat Enterprise Linux.

Comment 13 Eduardo Habkost 2014-04-16 19:16:04 UTC
Win 8.1 requires CMPXCHG16B, which is not enabled on Conroe, Opteron_G1, and kvm64 CPU models. See RHEL7 bug 1044979.


Note You need to log in before you can comment on or make changes to this bug.