From: Chris Venteicher <cventeic(a)redhat.com>
qemuProcessQMPNew is one of the public functions used to create and
manage a QEMU process for QMP command exchanges outside of domain
operations.
Add descriptive comment block, debug statement and make source
consistent with the cleanup / VIR_STEAL_PTR format used elsewhere.
Signed-off-by: Chris Venteicher <cventeic(a)redhat.com>
Reviewed-by: Jiri Denemark <jdenemar(a)redhat.com>
Signed-off-by: Jiri Denemark <jdenemar(a)redhat.com>
---
Notes:
Version 7:
- just a few small tweaks, mainly in the commit message and comments
src/qemu/qemu_process.c | 25 ++++++++++++++++++++-----
1 file changed, 20 insertions(+), 5 deletions(-)
diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c
index 79896b6232..b5d127b7d3 100644
--- a/src/qemu/qemu_process.c
+++ b/src/qemu/qemu_process.c
@@ -8341,6 +8341,17 @@ qemuProcessQMPFree(qemuProcessQMPPtr proc)
}
+/**
+ * qemuProcessQMPNew:
+ * @binary: QEMU binary
+ * @libDir: Directory for process and connection artifacts
+ * @runUid: UserId for QEMU process
+ * @runGid: GroupId for QEMU process
+ * @forceTCG: Force TCG mode if true
+ *
+ * Allocate and initialize domain structure encapsulating QEMU process state
+ * and monitor connection for completing QMP queries.
+ */
qemuProcessQMPPtr
qemuProcessQMPNew(const char *binary,
const char *libDir,
@@ -8348,24 +8359,28 @@ qemuProcessQMPNew(const char *binary,
gid_t runGid,
bool forceTCG)
{
+ qemuProcessQMPPtr ret = NULL;
qemuProcessQMPPtr proc = NULL;
+ VIR_DEBUG("exec=%s, libDir=%s, runUid=%u, runGid=%u, forceTCG=%d",
+ binary, libDir, runUid, runGid, forceTCG);
+
if (VIR_ALLOC(proc) < 0)
- goto error;
+ goto cleanup;
if (VIR_STRDUP(proc->binary, binary) < 0 ||
VIR_STRDUP(proc->libDir, libDir) < 0)
- goto error;
+ goto cleanup;
proc->runUid = runUid;
proc->runGid = runGid;
proc->forceTCG = forceTCG;
- return proc;
+ VIR_STEAL_PTR(ret, proc);
- error:
+ cleanup:
qemuProcessQMPFree(proc);
- return NULL;
+ return ret;
}
--
2.20.1