hi daniel
> i'm playing on debian lenny with kvm-66/libvirt-0.4.2 .
>
> if i run top, i see libvirtd is top cpu consumer. if i connect with
> strace to libvirtd, i see a thousand times this message:
>
> poll([{fd=3, events=POLLIN}, {fd=6, events=POLLIN|POLLERR|POLLHUP},
> {fd=7, events=POLLIN|POLLERR|POLLHUP}, {fd=8, events=POLLIN}, {fd=13,
> events=POLLIN|POLLERR|POLLHUP, revents=POLLHUP}, {fd=15,
> events=POLLIN|POLLERR|POLLHUP, revents=POLLHUP}, {fd=17,
> events=POLLIN|POLLERR|POLLHUP}, {fd=19, events=POLLIN|POLLERR|POLLHUP}],
> 8, -1) = 2
So this is saying 2 of file descriptors have hit 'end of file' condition
and for some bizarre reason libvirt is not cleaning them up. What do you
do to cause trigger the high CPU usage ? Does it occurr the moment you
start libvirtd ? Or only when you start a VM ? Or only when you shutdown
a VM ? Or something else altogether...
The output of 'lsof -p' on the libvirtd process might be helpful. You
might also try running with --verbose and LIBVIRT_DEBUG=1 envirnoment
variable set and capturing the output
hmm.. ok, i can't reproduce it anymore. :/ but i found a second libvirtd
process in defunct state. maybe this was the cause for this "bizzare
reason libvirt not cleaning them up".
after rebooting i tested again and libvirtd was not consuming all of the
cpu...
sorry for disturbing.
- Thomas