On hosts that don't have the DBus service running or installed the new
systemd cgroups code failed with hard error instead of falling back to
"manual" cgroup creation.
Use the new helper to check for the system bus and use the fallback code
in case it isn't available.
---
src/util/virsystemd.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/src/util/virsystemd.c b/src/util/virsystemd.c
index 251b846..3e69ef6 100644
--- a/src/util/virsystemd.c
+++ b/src/util/virsystemd.c
@@ -145,8 +145,10 @@ int virSystemdCreateMachine(const char *name,
char *username = NULL;
char *slicename = NULL;
- if (!(conn = virDBusGetSystemBus()))
- return -1;
+ if (!virDBusHasSystemBus())
+ return -2;
+
+ conn = virDBusGetSystemBus();
if (privileged) {
if (virAsprintf(&machinename, "%s-%s", drivername, name) < 0)
--
1.8.3.2