Bug 1042748 - win2012r-64 guest BSOD when boot with "-smp 160,sockets=1,cores=160,threads=1"
Summary: win2012r-64 guest BSOD when boot with "-smp 160,sockets=1,cores=160,threads=1"
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Red Hat Enterprise Linux 7
Classification: Red Hat
Component: qemu-kvm
Version: 7.0
Hardware: Unspecified
OS: Unspecified
medium
medium
Target Milestone: rc
: ---
Assignee: Yvugenfi@redhat.com
QA Contact: Virtualization Bugs
URL:
Whiteboard:
Depends On:
Blocks: 1069309
TreeView+ depends on / blocked
 
Reported: 2013-12-13 09:27 UTC by langfang
Modified: 2015-02-12 15:48 UTC (History)
16 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2015-02-12 15:48:08 UTC
Target Upstream Version:


Attachments (Terms of Use)
BSOD (30.99 KB, image/png)
2013-12-13 09:29 UTC, langfang
no flags Details
Task Manager-Performance-CPU (81.39 KB, image/png)
2014-01-22 07:55 UTC, langfang
no flags Details
TaskManager-Performance-Memory (88.22 KB, image/png)
2014-01-22 07:56 UTC, langfang
no flags Details
Task Manager-ResourceMonitor-CPU (165.31 KB, image/png)
2014-01-22 07:56 UTC, langfang
no flags Details
TaskManager-ResourceMonitor-CPU (171.42 KB, image/png)
2014-01-22 07:57 UTC, langfang
no flags Details

Description langfang 2013-12-13 09:27:39 UTC
Description of problem:
Win2012r-64 guest BSOD when boot with "-smp 160,sockets=1,cores=160,threads=1"
If boot with "-smp 160,sockets=2,cores=80,threads=1" not hit

Version-Release number of selected component (if applicable):
Host:
# uname -r
3.10.0-60.el7.x86_64
# rpm -q qemu-kvm-rhev
qemu-kvm-rhev-1.5.3-21.el7.x86_64

Guest:
win2012r2-64

How reproducible:

100%

Steps to Reproduce:
1.Boot guest with "smp 160,sockets=1,cores=160,threads=1"


Actual results:
Guest try to boot repeadly,but every time is  BSOD.And guest not collect the BSOD data.The results see attachment.

Expected results:

Guest work well

Additional info:


1)My CLI: /usr/libexec/qemu-kvm -M q35 -cpu Opteron_G5 -m 16G -smp 160,sockets=1,cores=160,threads=1 -device piix3-usb-uhci,id=usb -name rhel7 -nodefaults -nodefconfig -device virtio-balloon-pci,id=balloon0 -vnc :16 -vga qxl -global qxl-vga.revision=3 -global PIIX4_PM.disable_s3=0 -global PIIX4_PM.disable_s4=0 -monitor stdio  -qmp tcp:0:4446,server,nowait -drive file=/root/flang/en_windows_server_2012_r2_x64_dvd_2707946.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 -netdev tap,id=hostnet0,script=/etc/qemu-ifup -device virtio-net-pci,netdev=hostnet0,mac=00:10:20:2d:31:21,bus=pcie.0,addr=0x6,id=net0 -usb -device usb-tablet,id=input0 -boot d -drive file=/root/flang/win2012-newinstall-13.qcow2_v3,if=none,media=disk,format=qcow2,rerror=stop,werror=stop,aio=native,id=scsi-disk0 -device virtio-scsi-pci,id=bus2,addr=0x7 -device scsi-hd,bus=bus2.0,drive=scsi-disk0,id=disk0,bootindex=0  -boot menu=on


2.Change to boot guest with "-smp 160,sockets=2,cores=80,threads=1",not hit the problem

3.HOst info:

processor	: 31
vendor_id	: AuthenticAMD
cpu family	: 21
model		: 2
model name	: AMD Opteron(tm) Processor 6376                 
stepping	: 0
microcode	: 0x6000822
cpu MHz		: 2294.375
cache size	: 2048 KB
physical id	: 1
siblings	: 16
core id		: 7
cpu cores	: 8
apicid		: 79
initial apicid	: 47
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 nopl nonstop_tsc extd_apicid amd_dcm 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 perfctr_nb arat cpb hw_pstate npt lbrv svm_lock nrip_save tsc_scale vmcb_clean flushbyasid decodeassists pausefilter pfthreshold bmi1
bogomips	: 4587.97
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


4.Test rhel7 guest ,work well

Comment 2 langfang 2013-12-13 09:29:59 UTC
Created attachment 836234 [details]
BSOD

Comment 3 Ronen Hod 2013-12-16 16:47:42 UTC
langfang,

I think that we already had such a bug with a single huge NUMA node in RHEL6, and that this is expected.
Can you try hv_relaxed.

Thanks, Ronen.

Comment 4 langfang 2013-12-17 03:05:18 UTC
(In reply to Ronen Hod from comment #3)
> langfang,
> 
> I think that we already had such a bug with a single huge NUMA node in
> RHEL6, and that this is expected.
> Can you try hv_relaxed.
> 
> Thanks, Ronen.

Hi,Ronen
   I tried boot guest with "-cpu Opteron_G5,hv_relaxed", hit the same problem .By the way , i can't  found such bug on rhel6, could you please give me the bug id? 


thanks 

fang lang

Comment 5 Vadim Rozenfeld 2013-12-17 06:35:46 UTC
(In reply to langfang from comment #4)
> (In reply to Ronen Hod from comment #3)
> > langfang,
> > 
> > I think that we already had such a bug with a single huge NUMA node in
> > RHEL6, and that this is expected.
> > Can you try hv_relaxed.
> > 
> > Thanks, Ronen.
> 
> Hi,Ronen
>    I tried boot guest with "-cpu Opteron_G5,hv_relaxed", hit the same
> problem .By the way , i can't  found such bug on rhel6, could you please
> give me the bug id? 
> 
> 
> thanks 
> 
> fang lang

This problem is not related to hv_relaxed.
ntoskrnl generates MULTIPROCESSOR_CONFIGURATION_NOT_SUPPORTED BSOD when it meets
some CPU characteristics mismatching on MP system. Crashdump, or at least the first bugcheck parameter can help a lot. There are at list three cases including problem with initializing MTRR when system craches down with this bugcheck code.

Vadim.

Comment 6 Ronen Hod 2013-12-17 13:40:13 UTC
(In reply to Vadim Rozenfeld from comment #5)
> (In reply to langfang from comment #4)
> > (In reply to Ronen Hod from comment #3)
> > > langfang,
> > > 
> > > I think that we already had such a bug with a single huge NUMA node in
> > > RHEL6, and that this is expected.
> > > Can you try hv_relaxed.
> > > 
> > > Thanks, Ronen.
> > 
> > Hi,Ronen
> >    I tried boot guest with "-cpu Opteron_G5,hv_relaxed", hit the same
> > problem .By the way , i can't  found such bug on rhel6, could you please
> > give me the bug id? 
> > 
> > 
> > thanks 
> > 
> > fang lang
> 
> This problem is not related to hv_relaxed.
> ntoskrnl generates MULTIPROCESSOR_CONFIGURATION_NOT_SUPPORTED BSOD when it
> meets
> some CPU characteristics mismatching on MP system. Crashdump, or at least
> the first bugcheck parameter can help a lot. There are at list three cases
> including problem with initializing MTRR when system craches down with this
> bugcheck code.
> 
> Vadim.

So is it CAN'T FIX, and all we can do is to document it?
Fand Lang, I didn't find the other bug too. From Vadim's analysis it looks like it was a different issue.

Comment 7 Yvugenfi@redhat.com 2014-01-14 23:34:16 UTC
Windows physical and logical processors support limits:
http://blogs.technet.com/b/matthts/archive/2012/10/14/windows-server-sockets-logical-processors-symmetric-multi-threading.aspx

Windows Server 2012 Maximums
 

Windows Server 2012 x64 with Hyper-V Enabled

Windows Server 2012 Standard Edition supports up to 64 sockets and up to 320 logical processors
Windows Server 2012 Datacenter Edition supports up to 64 sockets and up to 320 logical processors

Windows Server 2012 without Hyper-V Enabled

Windows Server 2012 Standard Edition supports up to 64 sockets and up to 640 logical processors
Windows Server 2012 Datacenter Edition supports up to 64 sockets and up to 640 logical processors
Windows Server 2012 x86

There is no such product. Windows Server 2012 is x64 only.

 

Windows Server 2008 R2 Maximums
 

Windows Server 2008 R2 x64 with Hyper-V Enabled

Windows Server 2008 Standard Edition supports up to 4 sockets and up to 64 logical processors
Windows Server 2008 Enterprise Edition support up to of 8 sockets and up to 64 logical processors
Windows Server 2008 Datacenter Edition supports up to 64 sockets and up to 64 logical processors

Windows Server 2008 R2 x64 without Hyper-V Enabled

Windows Server 2008 Standard Edition supports up to 4 sockets and up to 256 logical processors
Windows Server 2008 Enterprise Edition support up to of 8 sockets and up to 256 logical processors
Windows Server 2008 Datacenter Edition supports up to 64 sockets and up to 256 logical processors

Windows Server 2008 R2 x86

There is no such product. Windows Server 2008 R2 is x64 only.

 

Windows Server 2008 with Service Pack 2 Maximums
 

Windows Server 2008 x64 SP2 with Hyper-V Enabled

Windows Server 2008 Standard Edition supports up to 4 sockets and 24 logical processors
Windows Server 2008 Enterprise Edition support up to 8 sockets and 24 logical processors
Windows Server 2008 Datacenter Edition supports up to 32 sockets and 24 logical processors

Windows Server 2008 x64 SP2 without Hyper-V Enabled

Windows Server 2008 Standard Edition supports up to 4 sockets and up to 64 logical processors
Windows Server 2008 Enterprise Edition supports up to 8 sockets and up to 64 logical processors
Windows Server 2008 Datacenter Edition supports up to 32 sockets and up to 64 logical processors

Windows Server 2008 x86 SP2 with Hyper-V Enabled

This doesn’t exist. Hyper-V is an x64 only role and isn’t available in the x86 (32-bit) SKU.

Windows Server 2008 x86 SP2 without Hyper-V Enabled*

Windows Server 2008 Standard Edition supports up to 4 sockets and up to 32 logical processors
Windows Server 2008 Enterprise Edition supports up to 8 sockets and up to 32 logical processors
Windows Server 2008 Datacenter Edition supports up to 32 sockets and up to 32 logical processors

 

Windows Server 2008 with Service Pack 1 Maximums
 

Windows Server 2008 x64 with Hyper-V Enabled

Windows Server 2008 Standard Edition supports up 4 sockets with up to 16 logical processors
Windows Server 2008 Enterprise Edition support up to 8 sockets with up to 16 logical processors
Windows Server 2008 Datacenter Edition supports up to up to 64 sockets with up to 16 logical processors

Windows Server 2008 x64 without Hyper-V Enabled

Windows Server 2008 Standard Edition supports up to 4 sockets and up to 64 logical processors
Windows Server 2008 Enterprise Edition support up to 8 sockets and up to 64 logical processors
Windows Server 2008 Datacenter Edition supports up to 32 sockets and up to 64 logical processors

Windows Server 2008 x86 with Hyper-V Enabled

This doesn’t exist. Hyper-V is an x64 only role and isn’t available in the x86 (32-bit) SKU.

Windows Server 2008 x86 without Hyper-V Enabled

Windows Server 2008 Standard Edition supports up to 4 sockets and up to 32 logical processors
Windows Server 2008 Enterprise Edition supports up to 8 sockets and up to 32 logical processors
Windows Server 2008 Datacenter Edition supports up to 32 sockets and up to 32 logical processors
Hyper-V is an x64 only role and thus isn’t available in this SKU

Windows Server 2008 x64 with Hyper-V Enabled and KB956710 installed*

Windows Server 2008 Standard Edition supports up to 4 sockets and 24 logical processors
Windows Server 2008 Enterprise Edition support up to 8 sockets and 24 logical processors
Windows Server 2008 Datacenter Edition supports up to 32 sockets and 24 logical processors
*This is included for completeness, however, it’s recommended that customers upgrade to Service Pack 2 which includes this fix and more.

Comment 10 langfang 2014-01-22 07:55:00 UTC
Created attachment 853720 [details]
Task Manager-Performance-CPU

Comment 11 langfang 2014-01-22 07:56:00 UTC
Created attachment 853721 [details]
TaskManager-Performance-Memory

Comment 12 langfang 2014-01-22 07:56:41 UTC
Created attachment 853722 [details]
Task Manager-ResourceMonitor-CPU

Comment 13 langfang 2014-01-22 07:57:23 UTC
Created attachment 853723 [details]
TaskManager-ResourceMonitor-CPU

Comment 21 langfang 2014-11-05 07:03:11 UTC
(In reply to Yan Vugenfirer from comment #7)
> Windows physical and logical processors support limits:
> http://blogs.technet.com/b/matthts/archive/2012/10/14/windows-server-sockets-
> logical-processors-symmetric-multi-threading.aspx
> 
> Windows Server 2012 Maximums
>  
> 
> Windows Server 2012 x64 with Hyper-V Enabled
> 
> Windows Server 2012 Standard Edition supports up to 64 sockets and up to 320
> logical processors
> Windows Server 2012 Datacenter Edition supports up to 64 sockets and up to
> 320 logical processors
> 
> Windows Server 2012 without Hyper-V Enabled
> 
> Windows Server 2012 Standard Edition supports up to 64 sockets and up to 640
> logical processors
> Windows Server 2012 Datacenter Edition supports up to 64 sockets and up to
> 640 logical processors
> Windows Server 2012 x86
> 
> There is no such product. Windows Server 2012 is x64 only.
> 
>  
> 

As comment7, i will reopen this bug, reason:

1)About this bug "-smp 160,sockets=1,cores=160,threads=1.."--->BSOD, sockets 1<64 sockets, smp 160 <640 ,both data are not over the scope


If i was wrong ,please correct me ,thanks

Comment 23 Paolo Bonzini 2015-01-14 13:19:20 UTC
Please try reducing the number of cores to 80.  It's possible that there is another limitation of Windows that Microsoft doesn't document.  In any case, it isn't our bug.

We may want to document it, or just close it.

Comment 24 Vadim Rozenfeld 2015-01-14 23:16:01 UTC
(In reply to Paolo Bonzini from comment #23)
> Please try reducing the number of cores to 80.  It's possible that there is
> another limitation of Windows that Microsoft doesn't document.  In any case,
> it isn't our bug.
> 
> We may want to document it, or just close it.

Starting from Windows 7-64bit and later the maximul numner of logical processors is 64  per a group. BTW the crash itself is MULTIPROCESSOR_CONFIGURATION_NOT_SUPPORTED which means that windows thinks that it is running on non-SMP platform. If linux can run on both configurations, then maybe cpuinfo can help.

Comment 25 langfang 2015-02-03 08:01:54 UTC
(In reply to Paolo Bonzini from comment #23)
> Please try reducing the number of cores to 80.  It's possible that there is
> another limitation of Windows that Microsoft doesn't document.  In any case,
> it isn't our bug.
> 
> We may want to document it, or just close it.

Test this bug on latest qemu-kvm and qemu-kvm-rhev version, not hit the BSOD problem anymore

Version:
# uname -r
3.10.0-229.el7.x86_64
# rpm -q qemu-kvm-rhev
qemu-kvm-rhev-2.1.2-23.el7.x86_64/qemu-kvm-1.5.3-86.el7.x86_64


Results: can boot up successfully,not hit BSOD problem


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