1
0
mirror of https://gitlab.com/libvirt/libvirt.git synced 2025-03-30 18:50:18 +03:00

qemu: improve shutdown defaults for session daemon

Currently the session daemon will try a managed save on all VMs,
leaving them running if that fails.

This limits the managed save just to persistent VMs, as there will
usually not be any way to restore transient VMs later.

It also enables graceful shutdown and then forced poweroff, should
save fail for some reason.

These new defaults can be overridden in the config file if needed.

Reviewed-by: Peter Krempa <pkrempa@redhat.com>
Signed-off-by: Daniel P. Berrangé <berrange@redhat.com>
This commit is contained in:
Daniel P. Berrangé 2024-12-20 17:32:49 +00:00
parent f48f700f3d
commit eb51f97870
3 changed files with 10 additions and 8 deletions

View File

@ -689,22 +689,24 @@
# managed save. If managed save is enabled, shutdown will
# be tried only on failure to perform managed save.
#
# Defaults to "none"
# Defaults to "all" for session daemons and "none" for
# system daemons
#
# If 'libvirt-guests.service' is enabled, then this must be
# set to 'none' for system daemons to avoid dueling actions
#auto_shutdown_try_shutdown = "none"
#auto_shutdown_try_shutdown = "all"
# As above, but with a forced poweroff instead of managed
# save. If managed save or graceful shutdown are enabled,
# forced poweroff will be tried only on failure of the
# other options.
#
# Defaults to "none"
# Defaults to "all" for session daemons and "none" for
# system daemons.
#
# If 'libvirt-guests.service' is enabled, then this must be
# set to 'none' for system daemons to avoid dueling actions
#auto_shutdown_poweroff = "none"
#auto_shutdown_poweroff = "all"
# If provided by the host and a hugetlbfs mount point is configured,
# a guest may request huge page backing. When this mount point is

View File

@ -325,8 +325,8 @@ virQEMUDriverConfig *virQEMUDriverConfigNew(bool privileged,
cfg->autoShutdownPoweroff = VIR_DOMAIN_DRIVER_AUTO_SHUTDOWN_SCOPE_NONE;
} else {
cfg->autoShutdownTrySave = VIR_DOMAIN_DRIVER_AUTO_SHUTDOWN_SCOPE_PERSISTENT;
cfg->autoShutdownTryShutdown = VIR_DOMAIN_DRIVER_AUTO_SHUTDOWN_SCOPE_NONE;
cfg->autoShutdownPoweroff = VIR_DOMAIN_DRIVER_AUTO_SHUTDOWN_SCOPE_NONE;
cfg->autoShutdownTryShutdown = VIR_DOMAIN_DRIVER_AUTO_SHUTDOWN_SCOPE_ALL;
cfg->autoShutdownPoweroff = VIR_DOMAIN_DRIVER_AUTO_SHUTDOWN_SCOPE_ALL;
}
return g_steal_pointer(&cfg);

View File

@ -81,8 +81,8 @@ module Test_libvirtd_qemu =
{ "auto_start_bypass_cache" = "0" }
{ "auto_start_delay" = "0" }
{ "auto_shutdown_try_save" = "persistent" }
{ "auto_shutdown_try_shutdown" = "none" }
{ "auto_shutdown_poweroff" = "none" }
{ "auto_shutdown_try_shutdown" = "all" }
{ "auto_shutdown_poweroff" = "all" }
{ "hugetlbfs_mount" = "/dev/hugepages" }
{ "bridge_helper" = "qemu-bridge-helper" }
{ "set_process_name" = "1" }