When connecting to virtlogd fails e.g. due to wrong libvirtd selinux
process label we'd report an utterly useless error message:

$ virsh start upstream
error: Failed to start domain upstream
error: Cannot recv data: Connection reset by peer

Use virLastErrorPrefixMessage in the correct place to give a better
sense of what's going on:

$ virsh start upstream
error: Failed to start domain upstream
error: can't connect to virtlogd: Cannot recv data: Connection reset by peer

Signed-off-by: Peter Krempa <pkre...@redhat.com>
---
 src/qemu/qemu_process.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c
index 50a76aa0ed..0ac3e0727b 100644
--- a/src/qemu/qemu_process.c
+++ b/src/qemu/qemu_process.c
@@ -6604,8 +6604,10 @@ qemuProcessLaunch(virConnectPtr conn,

     VIR_DEBUG("Creating domain log file");
     if (!(logCtxt = qemuDomainLogContextNew(driver, vm,
-                                            
QEMU_DOMAIN_LOG_CONTEXT_MODE_START)))
+                                            
QEMU_DOMAIN_LOG_CONTEXT_MODE_START))) {
+        virLastErrorPrefixMessage("%s", _("can't connect to virtlogd"));
         goto cleanup;
+    }
     logfile = qemuDomainLogContextGetWriteFD(logCtxt);

     if (qemuProcessGenID(vm, flags) < 0)
-- 
2.21.0

--
libvir-list mailing list
libvir-list@redhat.com
https://www.redhat.com/mailman/listinfo/libvir-list

Reply via email to