On Wed, Apr 06, 2011 at 12:13:10 +0800, Mark Wu wrote: > Hello Guys, > > When the qemu process becomes hung, virsh will get stuck on the hung > guest and can't move forward. It can be reproduced by the following steps: > > 1. setup a virt guest with qemu-kvm, and start it > 2. stop qemu process with following: > kill -STOP `ps aux | grep qemu | grep -v grep | awk '{print $2}'` > 3. run the following command: > virsh list > > I think we can add a timeout for qemu monitor to resolve this problem: > using virCondWaitUntil instead of virCondWait in qemuMonitorSend. What's > your opinions? This is not the right approach. Introducing a timeout into all monitor command send to qemu is a bad thing. I think the right approach is to have a simple API which would just return domain's state without talking to its monitor or doing other complicated stuff. The new API could then be used by virsh list to list all domains even though they are blocked on qemu monitor. After all, virsh is not really interested in current memory consumption of domains when listing them. The new API could also provide a reason which lead to current state so that one can see the reason even without watching for libvirt events. Jirka -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list