On a Monday in 2022, Peter Krempa wrote:
The QOM path will be needed by code which is querying the cpu flags
via
'qom-get' and thus needs a valid QOM path to the vCPU.
Add it into the private data and transfer from the queried data.
Signed-off-by: Peter Krempa <pkrempa(a)redhat.com>
---
src/qemu/qemu_domain.c | 3 +++
src/qemu/qemu_domain.h | 2 ++
2 files changed, 5 insertions(+)
diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c
index 14b585c6e9..015f635dc8 100644
--- a/src/qemu/qemu_domain.c
+++ b/src/qemu/qemu_domain.c
@@ -821,6 +821,7 @@ qemuDomainVcpuPrivateDispose(void *obj)
g_free(priv->type);
g_free(priv->alias);
virJSONValueFree(priv->props);
+ g_free(priv->qomPath);
return;
}
@@ -9550,6 +9551,8 @@ qemuDomainRefreshVcpuInfo(virQEMUDriver *driver,
vcpupriv->props = g_steal_pointer(&info[i].props);
vcpupriv->enable_id = info[i].id;
vcpupriv->qemu_id = info[i].qemu_id;
+ g_free(vcpupriv->qomPath);
+ vcpupriv->qomPath = g_steal_pointer(&info[i].qom_path);
Since this now copies qom_path, a followup patch to this comment
in struct _qemuMonitorCPUInfo might be needed:
/* internal for use in the matching code */
char *qom_path;
Jano