Bug 816798 - resources fail to split equally if mem and cpus are omitted when imulate multi node
resources fail to split equally if mem and cpus are omitted when imulate mult...
Status: CLOSED DUPLICATE of bug 816804
Product: Red Hat Enterprise Linux 6
Classification: Red Hat
Component: qemu-kvm (Show other bugs)
6.3
x86_64 Linux
medium Severity medium
: rc
: ---
Assigned To: Eduardo Habkost
Virtualization Bugs
:
Depends On:
Blocks: 833130
  Show dependency treegraph
 
Reported: 2012-04-26 23:10 EDT by Sibiao Luo
Modified: 2012-07-20 09:35 EDT (History)
15 users (show)

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2012-07-20 09:35:45 EDT
Type: Bug
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Sibiao Luo 2012-04-26 23:10:06 EDT
Description of problem:
boot up guest with multi "-numa node", resources fail to split equally if mem and cpus are omitted when imulate multi node, and check the memory and cpu between the monitor and guest are not the same.

Version-Release number of selected component (if applicable):
host info:
# uname -r && rpm -q qemu-kvm-rhev
2.6.32-262.el6.x86_64
qemu-kvm-rhev-0.12.1.2-2.285.el6.x86_64
guest info:
guest name: RHEL6.3-20120416.0_x86_64
# uname -r
2.6.32-262.el6.x86_64
# rpm -qa | grep numactl
numactl-2.0.7-3.el6.x86_64

How reproducible:
100%(imulate multi "-numa node")

Steps to Reproduce:
1.boot up guest with multi "-numa node", the cpus and mem sum should be same as -mem and -smp and depends on the host condition.
eg: # /usr/libexec/qemu-kvm -M rhel6.3.0 -cpu qemu64,+sse2 -enable-kvm  -usb -device usb-tablet,id=input0 -name sluo_test -uuid `uuidgen` -drive file=/home/RHEL6.3-20120416.0-Server-x86_64.qcow2,format=qcow2,if=none,id=drive-disk,cache=none,werror=stop,rerror=stop -device virtio-blk-pci,drive=drive-disk,id=image,bootindex=1 -netdev tap,id=hostnet0,script=/etc/qemu-ifup -device virtio-net-pci,netdev=hostnet0,id=virtio-net-pci0,bootindex=2 -device virtio-balloon-pci,id=ballooning -monitor stdio -boot menu=on -spice port=5931,disable-ticketing -numa node -numa node -numa node -numa node -numa node
2.check memory and cpu info in monitor.
3.check memory and cpu info in guest. 

Actual results:
after the step 2,
(qemu) info numa
5 nodes
node 0 cpus: 20 25 30
node 0 size: 1024 MB
node 1 cpus: 21 26 31
node 1 size: 1024 MB
node 2 cpus: 0 5 10 15 22 27 32 37 42 47
node 2 size: 1024 MB
node 3 cpus: 1 3 6 8 11 13 16 18 23 28 33 35 38 40 43 45 48
node 3 size: 1024 MB
node 4 cpus: 2 4 7 9 12 14 17 19 24 29 34 36 39 41 44 46 49
node 4 size: 1024 MB

after the step 3,
# numactl --hardware
available: 5 nodes (0-4)
node 0 cpus: 0 3 5 8 10 13 15 20 25 30 32 35 37 40 42 45 47
node 0 size: 1023 MB
node 0 free: 388 MB
node 1 cpus: 1 4 6 9 11 14 16 21 26 31 33 36 38 41 43 46 48
node 1 size: 1024 MB
node 1 free: 942 MB
node 2 cpus: 2 7 12 17 22 27 34 39 44 49
node 2 size: 1024 MB
node 2 free: 955 MB
node 3 cpus: 18 23 28
node 3 size: 1023 MB
node 3 free: 974 MB
node 4 cpus: 19 24 29
node 4 size: 1024 MB
node 4 free: 947 MB
node distances:
node   0   1   2   3   4 
  0:  10  20  20  20  20 
  1:  20  10  20  20  20 
  2:  20  20  10  20  20 
  3:  20  20  20  10  20 
  4:  20  20  20  20  10

Expected results:
1.the cpu resource should split equally if mem and cpus are omitted in CLI.
2.the memory and cpu between the monitor and guest should be the same.

Additional info:
host info,
# lscpu
Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                80
On-line CPU(s) list:   0-79
Thread(s) per core:    2
Core(s) per socket:    10
CPU socket(s):         4
NUMA node(s):          4
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 47
Stepping:              2
CPU MHz:               1064.000
BogoMIPS:              3989.95
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              24576K
NUMA node0 CPU(s):     0-9,40-49
NUMA node1 CPU(s):     10-19,50-59
NUMA node2 CPU(s):     20-29,60-69
NUMA node3 CPU(s):     30-39,70-79
# cat /proc/buddyinfo 
Node 0, zone      DMA      1      0      1      1      1      0      1      0      1      1      3 
Node 0, zone    DMA32     10      7     10      7      9     10     10      9     10      5     95 
Node 0, zone   Normal    492    194    242    108    203    162    195    121     89      4  31381 
Node 1, zone   Normal   2227   1840   1021    539    359    195    110     68     43     25  25409 
Node 2, zone   Normal   1614   1042    792    493    261    130     89     68     52     52  31876 
Node 3, zone   Normal    514    444    268    209    154     97     68     32     13     21  31489
Comment 2 Sibiao Luo 2012-04-27 00:48:55 EDT
(In reply to comment #0)
>
> Steps to Reproduce:
> 1.boot up guest with multi "-numa node", the cpus and mem sum should be same as
> -mem and -smp and depends on the host condition.
> eg: # /usr/libexec/qemu-kvm -M rhel6.3.0 -cpu qemu64,+sse2 -enable-kvm
here dropped "-m 5120 -smp 50,sockets=1,cores=50,threads=1" for my mistake.
eg: #/usr/libexec/qemu-kvm -M rhel6.3.0 -cpu qemu64,+sse2 -enable-kvm -m 5120 -smp 50,sockets=1,cores=50,threads=1 ... -numa node -numa node -numa node -numa node -numa node
Comment 4 Eduardo Habkost 2012-07-20 09:35:45 EDT

*** This bug has been marked as a duplicate of bug 816804 ***

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