Yes, it belongs to system related error rather than libvirt operation related. ----- Original Message ----- From: "Daniel P. Berrange" <berrange@xxxxxxxxxx> To: "Guannan Ren" <gren@xxxxxxxxxx> Cc: libvir-list@xxxxxxxxxx Sent: Friday, May 17, 2013 6:14:56 PM Subject: Re: [PATCH] qemu: report useful error failling to destroy domain gracefully On Fri, May 17, 2013 at 05:32:06PM +0800, Guannan Ren wrote: > Resolves:https://bugzilla.redhat.com/show_bug.cgi?id=927620 > > #kill -STOP `pidof qemu-kvm` > #virsh destroy $guest --graceful > error: Failed to destroy domain testVM > error: An error occurred, but the cause is unknown > > With --graceful, SIGTERM always is emitted to kill driver > process, but it won't success till burning out waiting time > in case of process being stopped. > But domain destroy without --graceful can work, SIGKILL will > be emitted to the stopped process after 10 secs which always > kills a process even one that is currently stopped. > So report an error after burning out waiting time in this case. > --- > > - VIR_DEBUG("Timed out waiting after SIGKILL to process %lld", > - (long long)pid); > + virReportError(VIR_ERR_OPERATION_INVALID, > + _("Failed to terminate process %lld with SIG%s"), > + (long long)pid, signame); OPERATION_INVALID isn't really appropriate for this. I'd raise a system error, using errno==EBUSY to indicate that it needs to be re-tried to kill the process Daniel -- |: http://berrange.com -o- http://www.flickr.com/photos/dberrange/ :| |: http://libvirt.org -o- http://virt-manager.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: http://entangle-photo.org -o- http://live.gnome.org/gtk-vnc :| -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list