
On Thu, Jan 20, 2022 at 17:59:49 +0100, Kristina Hanicova wrote:
We only need to set statsType in almost every case of setting something from private data, so it seems unnecessary to pull privateData out of current / completed job for just this one thing every time. I think this patch keeps the code cleaner without variables used just once.
Signed-off-by: Kristina Hanicova <khanicov@redhat.com> --- src/qemu/qemu_backup.c | 4 ++-- src/qemu/qemu_domain.c | 8 ++++++++ src/qemu/qemu_domain.h | 3 +++ src/qemu/qemu_driver.c | 14 ++++++-------- src/qemu/qemu_migration.c | 9 ++++----- src/qemu/qemu_process.c | 5 ++--- src/qemu/qemu_snapshot.c | 5 ++--- 7 files changed, 27 insertions(+), 21 deletions(-)
diff --git a/src/qemu/qemu_backup.c b/src/qemu/qemu_backup.c index 081c4d023f..23d3f44dd8 100644 --- a/src/qemu/qemu_backup.c +++ b/src/qemu/qemu_backup.c @@ -746,7 +746,6 @@ qemuBackupBegin(virDomainObj *vm, unsigned int flags) { qemuDomainObjPrivate *priv = vm->privateData; - qemuDomainJobDataPrivate *privData = priv->job.current->privateData; g_autoptr(virQEMUDriverConfig) cfg = virQEMUDriverGetConfig(priv->driver); g_autoptr(virDomainBackupDef) def = NULL; g_autofree char *suffix = NULL; @@ -800,7 +799,8 @@ qemuBackupBegin(virDomainObj *vm, qemuDomainObjSetAsyncJobMask(vm, (QEMU_JOB_DEFAULT_MASK | JOB_MASK(QEMU_JOB_SUSPEND) | JOB_MASK(QEMU_JOB_MODIFY))); - privData->statsType = QEMU_DOMAIN_JOB_STATS_TYPE_BACKUP; + qemuDomainJobPrivateSetStatsType(priv->job.current->privateData, + QEMU_DOMAIN_JOB_STATS_TYPE_BACKUP);
if (!virDomainObjIsActive(vm)) { virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s", diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index a8401bac30..62e67b438f 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c
The new helper would fit slightly better in qemu_domainjob.c
@@ -81,6 +81,14 @@ VIR_LOG_INIT("qemu.qemu_domain");
+void +qemuDomainJobPrivateSetStatsType(qemuDomainJobDataPrivate *privData, + qemuDomainJobStatsType type)
Since we're doing this to minimize the repeated code pattern, I would go a little bit further and change the prototype to qemuDomainJobSetStatsType(virDomainJobData *jobData, qemuDomainJobStatsType type)
+{
Having an extra qemuDomainJobDataPrivate *privData = jobData->privateData; here is better than repeating the dereference for every single caller.
+ privData->statsType = type; +} + + static void * qemuJobAllocPrivate(void) { ...
Looks OK otherwise. Jirka