I tested two newest QEMU versions these days, and sadly, the problem still happens.
I tried to find the reason why the qemu process take 100% usage of cpu, and collected some facts about it.
I compared the facts with other normal vm's qemu process(who's cpu usage is normal) and didn't turn out any interesting result.
Please give me some guides to debug this problem if you could, thanks very much.
I tested two newest QEMU versions these days, and sadly, the problem still happens.
I tried to find the reason why the qemu process take 100% usage of cpu, and collected some facts about it.
I compared the facts with other normal vm's qemu process(who's cpu usage is normal) and didn't turn out any interesting result.
Please give me some guides to debug this problem if you could, thanks very much.
(The full content of facts is in the attachment) qemu-kvm -name guest=instance- 0000530a, debug-threads= on -S -object secret, id=masterKey0, format= raw,file= /var/lib/ libvirt/ qemu/domain- 1-instance- 0000530a/ master- key.aes -machine pc-i440fx- 4.0,accel= kvm,usb= off,dump- guest-core= off -cpu IvyBridge -m 2048 -realtime mlock=off -smp 1,sockets= 1,cores= 1,threads= 1 -object memory- backend- ram,id= ram-node0, size=2147483648 ,host-nodes= 1,policy= bind -numa node,nodeid= 0,cpus= 0,memdev= ram-node0 -uuid 60d3ad85- 1004-47e7- b2cb-5cf1a029ab 47 -smbios type=1, manufacturer= Fedora Project, product= OpenStack Nova,version= 13.1.2- 1.el7,serial= c0700413- 4a28-4e97- 85c4-66fe3ec367 dc,uuid= 60d3ad85- 1004-47e7- b2cb-5cf1a029ab 47,family= Virtual Machine -no-user-config -nodefaults -chardev socket, id=charmonitor, path=/var/ lib/libvirt/ qemu/domain- 1-instance- 0000530a/ monitor. sock,server, nowait -mon chardev= charmonitor, id=monitor, mode=control -rtc base=utc, driftfix= slew -global kvm-pit. lost_tick_ policy= delay -no-hpet -no-shutdown -boot strict=on -device piix3-usb- uhci,id= usb,bus= pci.0,addr= 0x1.0x2 -drive file=/data/ instances/ 60d3ad85- 1004-47e7- b2cb-5cf1a029ab 47/disk, format= raw,if= none,id= drive-virtio- disk0,cache= none -device virtio- blk-pci, scsi=off, bus=pci. 0,addr= 0x4,drive= drive-virtio- disk0,id= virtio- disk0,bootindex =1 -drive file=/data/ instances/ 60d3ad85- 1004-47e7- b2cb-5cf1a029ab 47/disk. swap,format= raw,if= none,id= drive-virtio- disk1,cache= none -device virtio- blk-pci, scsi=off, bus=pci. 0,addr= 0x5,drive= drive-virtio- disk1,id= virtio- disk1 -drive file=/data/ instances/ 60d3ad85- 1004-47e7- b2cb-5cf1a029ab 47/disk. config, format= raw,if= none,id= drive-ide0- 1-1,readonly= on,cache= none -device ide-cd, bus=ide. 1,unit= 1,drive= drive-ide0- 1-1,id= ide0-1- 1 -netdev tap,fd= 27,id=hostnet0, vhost=on, vhostfd= 29 -device virtio- net-pci, netdev= hostnet0, id=net0, mac=fa: 16:3e:21: 2c:70,bus= pci.0,addr= 0x3 -add-fd set=2,fd=31 -chardev file,id= charserial0, path=/dev/ fdset/2, append= on -device isa-serial, chardev= charserial0, id=serial0 -chardev pty,id=charserial1 -device isa-serial, chardev= charserial1, id=serial1 -device usb-tablet, id=input0, bus=usb. 0,port= 1 -vnc 0.0.0.0:0 -k en-us -device cirrus- vga,id= video0, bus=pci. 0,addr= 0x2 -device virtio- balloon- pci,id= balloon0, bus=pci. 0,addr= 0x6 -msg timestamp=on
1.
======the command line to start a VM======
# ps -ef |grep 1567284 | cat
qemu 1567284 1 99 Jun21 ? 2-18:09:33 /usr/libexec/
root 1567288 2 0 Jun21 ? 00:00:01 [vhost-1567284]
root 1567291 2 0 Jun21 ? 00:00:00 [kvm-pit/1567284]
2. qemu-kvm --version
===version of QEMU===
# /usr/libexec/
QEMU emulator version 4.0.0
Copyright (c) 2003-2019 Fabrice Bellard and the QEMU Project developers
===version of libvirt===
# libvirtd -V
libvirtd (libvirt) 3.9.0
===version of kernal=== 862.el7. x86_64 #1 SMP Wed Mar 21 18:14:51 EDT 2018 x86_64 x86_64 x86_64 GNU/Linux 862.el7. x86_64) 7.5 (Maipo) 3.10.0- 862.el7. x86_64/ kernel/ arch/x86/ kvm/kvm. ko.xz F69A0E58 862.el7. x86_64 SMP mod_unload modversions 3B:F8:16: 37:D7:BF: 3C:51:50: 13:4E:EC: 84:1B:96: FD:0B period_ us:uint periodic_ sync:bool ppm:uint advance_ ns:uint ns_grow: uint ns_shrink: uint
# uname -a
Linux txyz_40_92 3.10.0-
Red Hat Enterprise Linux Server (3.10.0-
# modinfo kvm
filename: /lib/modules/
license: GPL
author: Qumranet
retpoline: Y
rhelversion: 7.5
srcversion: 8A3372406CDF0AC
depends: irqbypass
intree: Y
vermagic: 3.10.0-
signer: Red Hat Enterprise Linux kernel signing key
sig_key: 51:73:02:
sig_hashalgo: sha256
parm: ignore_msrs:bool
parm: min_timer_
parm: kvmclock_
parm: tsc_tolerance_
parm: lapic_timer_
parm: vector_hashing:bool
parm: halt_poll_ns:uint
parm: halt_poll_
parm: halt_poll_
3.
===threads===
# ps -Lp 1567284
PID LWP TTY TIME CMD
1567284 1567284 ? 00:00:12 qemu-kvm
1567284 1567286 ? 00:00:00 call_rcu
1567284 1567289 ? 00:00:00 IO mon_iothread
1567284 1567290 ? 2-19:07:09 CPU 0/KVM
1567284 1567293 ? 00:00:00 vnc_worker
1567284 1637413 ? 00:00:00 worker
===top===
# top -H -p 1567284
top - 13:02:07 up 164 days, 21:53, 2 users, load average: 1.00, 1.01, 1.05
Threads: 6 total, 1 running, 5 sleeping, 0 stopped, 0 zombie
%Cpu(s): 2.1 us, 0.0 sy, 0.0 ni, 97.9 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem : 26353241+total, 25289752+free, 2771140 used, 7863752 buff/cache
KiB Swap: 8388604 total, 8388604 free, 0 used. 25926534+avail Mem
scroll coordinates: y = 1/6 (tasks), x = 1/12 (fields)
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1567290 qemu 20 0 6683072 647416 8336 R 99.7 0.2 4028:04 CPU 0/KVM
1567284 qemu 20 0 6683072 647416 8336 S 0.0 0.2 0:12.93 qemu-kvm
1567286 qemu 20 0 6683072 647416 8336 S 0.0 0.2 0:00.00 call_rcu
1567289 qemu 20 0 6683072 647416 8336 S 0.0 0.2 0:00.00 IO mon_iothread
1567293 qemu 20 0 6683072 647416 8336 S 0.0 0.2 0:00.27 vnc_worker
1637464 qemu 20 0 6683072 647416 8336 S 0.0 0.2 0:00.00 worker
===htop===
....