Bug 1022817 - call trace when boot guest specified 160 vCPUs with a small memory
Summary: call trace when boot guest specified 160 vCPUs with a small memory
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: qemu-kvm
Version: 6.5
Hardware: Unspecified
OS: Unspecified
low
low
Target Milestone: rc
: ---
Assignee: Virtualization Maintenance
QA Contact: Virtualization Bugs
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-10-24 06:25 UTC by Sibiao Luo
Modified: 2014-04-24 03:10 UTC (History)
11 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-04-15 18:19:44 UTC
Target Upstream Version:


Attachments (Terms of Use)
guest kernel logs. (70.09 KB, text/plain)
2013-10-24 06:28 UTC, Sibiao Luo
no flags Details
10Gmemory_160vCPU_guest_kernel_logs. (368.92 KB, text/plain)
2013-10-24 07:04 UTC, Sibiao Luo
no flags Details

Description Sibiao Luo 2013-10-24 06:25:38 UTC
Description of problem:
Reserved a 160 CPU supported host and then boot guest specified 160 vCPU with only a small memory(e.g: 2G). Guest will call trace during boot process, but guest can boot up successfully and work well(e.g: network, mouse, keyboard, i/o).

Version-Release number of selected component (if applicable):
host info:
# uname -r && rpm -q qemu-kvm
2.6.32-424.el6.x86_64
qemu-kvm-0.12.1.2-2.414.el6.x86_64
guest info:
2.6.32-424.el6.x86_64

How reproducible:
100%

Steps to Reproduce:
1.Reserved a 160 CPU supported host and then boot guest specified 160 vCPU with only a small memory(e.g: 2G).
# /usr/libexec/qemu-kvm -M pc -S -cpu host -enable-kvm -m 2G -smp 160 -no-kvm-pit-reinjection -usb -device usb-tablet,id=input0 -name sluo -uuid 990ea161-6b67-47b2-b803-19fb01d30d30 -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/RHEL-6.5-Snapshot-4-Server-x86_64.qcow2,if=none,id=drive-virtio-disk,format=qcow2,cache=none,aio=native,werror=stop,rerror=stop -device ide-drive,bus=ide.0,unit=0,drive=drive-virtio-disk,id=virtio-disk,bootindex=1 -netdev tap,id=hostnet0,vhost=on,script=/etc/qemu-ifup -device virtio-net-pci,netdev=hostnet0,id=virtio-net-pci0,mac=00:01:02:B6:40:21,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 -qmp tcp:0:4444,server,nowait -serial unix:/tmp/ttyS0,server,nowait -vnc :1 -spice disable-ticketing,port=5931 -monitor stdio
2.
3.

Actual results:
Guest will call trace during boot process, but guest can boot up successfully and work well(e.g: network, mouse, keyboard, i/o).
I will attach the boot logs later.

Expected results:
there is no any call trace during guest boot process.

Additional info:
# lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                160
On-line CPU(s) list:   0-159
Thread(s) per core:    2
Core(s) per socket:    10
Socket(s):             8
NUMA node(s):          8
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 47
Stepping:              2
CPU MHz:               1066.000
BogoMIPS:              4799.97
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              30720K
NUMA node0 CPU(s):     0-9,80-89
NUMA node1 CPU(s):     10-19,90-99
NUMA node2 CPU(s):     20-29,100-109
NUMA node3 CPU(s):     30-39,110-119
NUMA node4 CPU(s):     40-49,120-129
NUMA node5 CPU(s):     50-59,130-139
NUMA node6 CPU(s):     60-69,140-149
NUMA node7 CPU(s):     70-79,150-159

Comment 1 Sibiao Luo 2013-10-24 06:28:13 UTC
Created attachment 815635 [details]
guest kernel logs.

Comment 2 Sibiao Luo 2013-10-24 06:38:14 UTC
My host has 160 PCU and 1 TB memory, guest can boot up successfully without any call trace if i boot guest with 160 vCPU + 900G memory.

Guest also call trace if i boot it with 160 vCPU + 10G memory, but the call trace logs different with 160 vCPU + 2G memory, i will also provice the logs later.

Comment 3 Sibiao Luo 2013-10-24 07:04:42 UTC
Created attachment 815641 [details]
10Gmemory_160vCPU_guest_kernel_logs.

Comment 4 Sibiao Luo 2013-10-24 07:07:18 UTC
(In reply to Sibiao Luo from comment #3)
> Created attachment 815641 [details]
> 10Gmemory_160vCPU_guest_kernel_logs.
# /usr/libexec/qemu-kvm -M pc -S -cpu host -enable-kvm -m 10G -smp 160 -no-kvm-pit-reinjection -usb -device usb-tablet,id=input0 -name sluo -uuid 990ea161-6b67-47b2-b803-19fb01d30d30 -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/RHEL-6.5-Snapshot-4-Server-x86_64.qcow2,if=none,id=drive-virtio-disk,format=qcow2,cache=none,aio=native,werror=stop,rerror=stop -device ide-drive,bus=ide.0,unit=0,drive=drive-virtio-disk,id=virtio-disk,bootindex=1 -netdev tap,id=hostnet0,vhost=on,script=/etc/qemu-ifup -device virtio-net-pci,netdev=hostnet0,id=virtio-net-pci0,mac=00:01:02:B6:40:21,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 -qmp tcp:0:4444,server,nowait -serial unix:/tmp/ttyS0,server,nowait -vnc :1 -spice disable-ticketing,port=5931 -monitor stdio

Comment 5 Paolo Bonzini 2013-10-24 23:33:54 UTC
The two call traces are the same, just with different messages when the lockup lasts <120s (in the 10G guest) or >=120s (in the 2G guest).

I think I have seen this bug already, but I cannot find it.  I don't think it is useful, each CPU would have access to 10 MB in the 2G guest.  That's less than the CPU cache size.

Comment 6 Ademar Reis 2014-04-15 18:19:44 UTC
WONTFIX for RHEL6, as it's not a real-world scenario. If you can reproduce it with RHEL7, please open a RHEL7 bug.

Comment 7 Qunfang Zhang 2014-04-16 02:36:30 UTC
(In reply to Ademar Reis from comment #6)
> WONTFIX for RHEL6, as it's not a real-world scenario. If you can reproduce
> it with RHEL7, please open a RHEL7 bug.

Hi, Sibiao

As Ademar said please open a RHEL7 bug if it exists in RHEL7.  Thanks.

Comment 8 Sibiao Luo 2014-04-24 03:10:39 UTC
(In reply to Ademar Reis from comment #6)
> WONTFIX for RHEL6, as it's not a real-world scenario. If you can reproduce
> it with RHEL7, please open a RHEL7 bug.

Not met this issue in rhel7 with 160 vCPU + 1G memory which boot up guest successfully without any guest call trace.
host info:
160 PCU & 1TB memory
# uname -r && rpm -q qemu-kvm
3.10.0-121.el7.x86_64
qemu-kvm-1.5.3-60.el7.x86_64

guest info:
160 vCPU & 1GB memory 
# uname -r
3.10.0-121.el7.x86_64

Best Regards,
sluo


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