[pve-devel] cpu 100% when get vmstaus

lulin f_ella at yeah.net
Mon Feb 25 08:48:10 CET 2013


Hi


Not easy to reproduce it. I traced it for a long time, It seems if the server have a heavy load it will be easier..


I tested with pve-qemu-kvm-1.3(with backup patches)..



Regards





At 2013-02-25 13:28:43,"Dietmar Maurer" <dietmar at proxmox.com> wrote:


Is there a way to reproduce that behavior? You already tested with new pve-qemu-kvm (1.4)?

 

From:pve-devel-bounces at pve.proxmox.com [mailto:pve-devel-bounces at pve.proxmox.com] On Behalf Of lulin
Sent: Samstag, 23. Februar 2013 11:33
To:pve-devel at pve.proxmox.com
Subject: [pve-devel] cpu 100% when get vmstaus

 

Hi

I don't know if it is a bug, sometimes when you shudown a VM,  pvedaemon will have 100% cpu usage.

bellow is 'top' output:

------------------------------

Tasks: 761 total,   3 running, 758 sleeping,   0 stopped,   0 zombie

Cpu(s): 14.0%us,  2.8%sy,  0.0%ni, 83.2%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st

Mem:  49378500k total, 45560112k used,  3818388k free,    17408k buffers

Swap: 24764408k total,  4106172k used, 20658236k free,  2291944k cached

 

  PID USER      PR  NI  VIRT   ;RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                        

31347 root      20   0  209m  41m 3664 R 99.6  0.1  44:36.22 pvedaemon 

-----------------------------

I print some logs to trace it, and find it is deadloop in QMPclient.pm:

 

240     for (;;)&n

bsp;{

241

 242         $running = &$check_queue($self);

243

 244         last if !$running;

245

 246         $self->{mux}->loop;

247     }

 

it seems if a vm is shutdown, the QMP socket can't have a close notify, and use 'netstat' command you can find a connection always stay in CLOSE_WAIT:

[root at OVPMAIN ~]# netstat -antop |grep pvedaemon

tcp        0      0 127.0.0.1:85                0.0.0.0:*                   LISTEN      1018/pvedaemon work off (0.00/0/0)

tcp        1      0 127.0.0.1:85                127.0.0.1:49246             CLOSE_WAIT  31347/pvedaemon wor off (0.00/0/0)

 

I tried to change the tcp_keepalive_* param in /proc, but not work since keepalive is disabled by default...

 

Any one have some idea?

 

 

Regards

 

Lenny

 

 
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.proxmox.com/pipermail/pve-devel/attachments/20130225/e54bf786/attachment.htm>


More information about the pve-devel mailing list