https://bugzilla.redhat.com/show_bug.cgi?id=916052
Domain lifecycle events "on_reboot" and "on_poweroff" translate into QEMU command options "no-reboot" and "no-shutdown" at startup time. The existing code only checked the "on_reboot" setting to determine whether to add the "no-reboot" option even though "on_poweroff" could have been set to allow reboot. Changed the logic to only use "no-reboot" if each of the lifecycle event actions was "destroy". I considered adding "preserve" as well; however, a future preserve action might be able to cull something from a qemu process that doesn't just exit immediately. NB, previously it was possible to have both QEMU command options on the command line, which while not tagged as an error could be considered "odd". During the shutdown or reboot domain operations, the calls to qemuAgentShutdown and qemuDomainSetFakeReboot did not consider the possibility that the event action for shutdown was reboot or the event action for reboot was destroy. This patch fixes that. NB, I wasn't sure how I could "convey" that to the user though. The virsh reboot will still issue the message "Domain is being rebooted" even though it could be destroyed. Like was virsh shutdown will still issue the message "Domain is being shutdown" even though it is being rebooted. The usage of VIR_INFO was an attempt to do that even though one would have to have the correct debug level set. Adjusted the documentation in order to describe the possible actions based on the event lifecycle action settings of the domain. John Ferlan (4): Adjust usage of qemu -no-reboot and -no-shutdown options Adjust comments to describe on_poweroff and on_reboot action Handle the domain event 'on_reboot' and 'on_poweroff' settings docs: Update formatdomain for lifecycle events docs/formatdomain.html.in | 30 ++++++++++++++++++++++-------- src/libvirt.c | 15 +++++++++++---- src/qemu/qemu_command.c | 17 +++++++++++++---- src/qemu/qemu_driver.c | 26 ++++++++++++++++++++++---- 4 files changed, 68 insertions(+), 20 deletions(-) -- 1.8.1.4 -- libvir-list mailing list libvir-list@redhat.com https://www.redhat.com/mailman/listinfo/libvir-list