From: Peter Krempa <pkre...@redhat.com> Extract the checker that determines whether the daemon auto shutdown functionality is active to a separate helper 'virDomainDriverAutoShutdownActive'.
Signed-off-by: Peter Krempa <pkre...@redhat.com> --- src/hypervisor/domain_driver.c | 13 ++++++++++--- src/hypervisor/domain_driver.h | 1 + src/libvirt_private.syms | 1 + 3 files changed, 12 insertions(+), 3 deletions(-) diff --git a/src/hypervisor/domain_driver.c b/src/hypervisor/domain_driver.c index 62bbe176ae..353b8875ec 100644 --- a/src/hypervisor/domain_driver.c +++ b/src/hypervisor/domain_driver.c @@ -729,6 +729,15 @@ virDomainDriverAutoStart(virDomainObjList *domains, } +bool +virDomainDriverAutoShutdownActive(virDomainDriverAutoShutdownConfig *cfg) +{ + return cfg->trySave != VIR_DOMAIN_DRIVER_AUTO_SHUTDOWN_SCOPE_NONE || + cfg->tryShutdown != VIR_DOMAIN_DRIVER_AUTO_SHUTDOWN_SCOPE_NONE || + cfg->poweroff != VIR_DOMAIN_DRIVER_AUTO_SHUTDOWN_SCOPE_NONE; +} + + void virDomainDriverAutoShutdown(virDomainDriverAutoShutdownConfig *cfg) { @@ -773,9 +782,7 @@ virDomainDriverAutoShutdown(virDomainDriverAutoShutdownConfig *cfg) } /* Short-circuit if all actions are disabled */ - if (cfg->trySave == VIR_DOMAIN_DRIVER_AUTO_SHUTDOWN_SCOPE_NONE && - cfg->tryShutdown == VIR_DOMAIN_DRIVER_AUTO_SHUTDOWN_SCOPE_NONE && - cfg->poweroff == VIR_DOMAIN_DRIVER_AUTO_SHUTDOWN_SCOPE_NONE) + if (!virDomainDriverAutoShutdownActive(cfg)) return; if (!(conn = virConnectOpen(cfg->uri))) diff --git a/src/hypervisor/domain_driver.h b/src/hypervisor/domain_driver.h index d90466b942..af1c4eaed6 100644 --- a/src/hypervisor/domain_driver.h +++ b/src/hypervisor/domain_driver.h @@ -116,4 +116,5 @@ typedef struct _virDomainDriverAutoShutdownConfig { bool autoRestore; } virDomainDriverAutoShutdownConfig; +bool virDomainDriverAutoShutdownActive(virDomainDriverAutoShutdownConfig *cfg); void virDomainDriverAutoShutdown(virDomainDriverAutoShutdownConfig *cfg); diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms index 8f1489ecc8..1b9be478e4 100644 --- a/src/libvirt_private.syms +++ b/src/libvirt_private.syms @@ -1658,6 +1658,7 @@ virDomainCgroupSetupVcpuBW; # hypervisor/domain_driver.h virDomainDriverAddIOThreadCheck; virDomainDriverAutoShutdown; +virDomainDriverAutoShutdownActive; virDomainDriverAutoShutdownScopeTypeFromString; virDomainDriverAutoShutdownScopeTypeToString; virDomainDriverAutoStart; -- 2.49.0