[libvirt] [openstack-dev] [nova] The risk of hanging when shutdown instance.

zhang bo oscar.zhangbo at huawei.com
Mon Mar 30 09:28:14 UTC 2015


On 2015/3/28 18:06, Rui Chen wrote:

> Thank you for reply, Chris.
> 
> 
> 2015-03-27 23:15 GMT+08:00 Chris Friesen <chris.friesen at windriver.com <mailto:chris.friesen at windriver.com>>:
> 
>     On 03/26/2015 07:44 PM, Rui Chen wrote:
> 
>         Yes, you are right, but we found our instance hang at first dom.shutdown() call,
>         if the dom.shutdown() don't return, there is no chance to execute dom.destroy(),
>         right?
> 
> 
>     Correct.  The code is written assuming dom.shutdown() cannot block indefinitely.
> 
>     The libvirt docs at "https://libvirt.org/html/__libvirt-libvirt-domain.html#__virDomainShutdown <https://libvirt.org/html/libvirt-libvirt-domain.html#virDomainShutdown>" say "...this command returns as soon as the shutdown request is issued rather than blocking until the guest is no longer running."
> 
>     If dom.shutdown() blocks indefinitely, then that's a libvirt bug.
> 
> 
>     Chris


  The API virDomainShutdown's description is out of date, it's not correct.
  In fact, virDomainShutdown would block or not, depending on its mode. If it's in mode *agent*, then it would be blocked until qemu founds that the guest actually got down.
Otherwise, if it's in mode *acpi*, then it would return immediately.
  Thus, maybe further more work need to be done in Openstack.

  What's your opinions, Michal and Daniel (from libvirt.org), and Chris (from openstack.org) :)




More information about the libvir-list mailing list