]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
qemu: make separate function for setting statsType of privateData
authorKristina Hanicova <khanicov@redhat.com>
Fri, 11 Feb 2022 13:49:06 +0000 (14:49 +0100)
committerJiri Denemark <jdenemar@redhat.com>
Tue, 15 Feb 2022 11:20:45 +0000 (12:20 +0100)
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>
Reviewed-by: Jiri Denemark <jdenemar@redhat.com>
src/qemu/qemu_backup.c
src/qemu/qemu_domainjob.c
src/qemu/qemu_domainjob.h
src/qemu/qemu_driver.c
src/qemu/qemu_migration.c
src/qemu/qemu_process.c
src/qemu/qemu_snapshot.c

index b0c81261de9e25832e90277c518c128b5857160b..2471242e605b5f22d2b4258cfbea2b2ba3cd8c68 100644 (file)
@@ -745,7 +745,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;
@@ -799,7 +798,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;
+    qemuDomainJobSetStatsType(priv->job.current,
+                              QEMU_DOMAIN_JOB_STATS_TYPE_BACKUP);
 
     if (!virDomainObjIsActive(vm)) {
         virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s",
index baa52dd98689e3d8dec7f8e55065d06afc60ceea..3e73eba4ed48c7a55f58376d47c430abc93faff0 100644 (file)
@@ -95,6 +95,16 @@ virDomainJobDataPrivateDataCallbacks qemuJobDataPrivateDataCallbacks = {
 };
 
 
+void
+qemuDomainJobSetStatsType(virDomainJobData *jobData,
+                          qemuDomainJobStatsType type)
+{
+    qemuDomainJobDataPrivate *privData = jobData->privateData;
+
+    privData->statsType = type;
+}
+
+
 const char *
 qemuDomainAsyncJobPhaseToString(qemuDomainAsyncJob job,
                                 int phase G_GNUC_UNUSED)
index 36acf401dd6a1225a12659ea6bc35e53190bfd6f..a078e62a1f9974b4981422b00fc588dac05dd563 100644 (file)
@@ -174,6 +174,9 @@ struct _qemuDomainJobObj {
     qemuDomainObjPrivateJobCallbacks *cb;
 };
 
+void qemuDomainJobSetStatsType(virDomainJobData *jobData,
+                               qemuDomainJobStatsType type);
+
 const char *qemuDomainAsyncJobPhaseToString(qemuDomainAsyncJob job,
                                             int phase);
 int qemuDomainAsyncJobPhaseFromString(qemuDomainAsyncJob job,
index eaa49385155cfabc08235db096e34d38d5127c8a..f2620200f05fd3e2401f82e96a82859ecd3552dc 100644 (file)
@@ -2637,7 +2637,6 @@ qemuDomainSaveInternal(virQEMUDriver *driver,
     int ret = -1;
     virObjectEvent *event = NULL;
     qemuDomainObjPrivate *priv = vm->privateData;
-    qemuDomainJobDataPrivate *privJobCurrent = priv->job.current->privateData;
     virQEMUSaveData *data = NULL;
     g_autoptr(qemuDomainSaveCookie) cookie = NULL;
 
@@ -2654,7 +2653,8 @@ qemuDomainSaveInternal(virQEMUDriver *driver,
         goto endjob;
     }
 
-    privJobCurrent->statsType = QEMU_DOMAIN_JOB_STATS_TYPE_SAVEDUMP;
+    qemuDomainJobSetStatsType(priv->job.current,
+                              QEMU_DOMAIN_JOB_STATS_TYPE_SAVEDUMP);
 
     /* Pause */
     if (virDomainObjGetState(vm, NULL) == VIR_DOMAIN_RUNNING) {
@@ -2995,9 +2995,8 @@ qemuDumpToFd(virQEMUDriver *driver,
         return -1;
 
     if (detach) {
-        qemuDomainJobDataPrivate *privStats = priv->job.current->privateData;
-
-        privStats->statsType = QEMU_DOMAIN_JOB_STATS_TYPE_MEMDUMP;
+        qemuDomainJobSetStatsType(priv->job.current,
+                                  QEMU_DOMAIN_JOB_STATS_TYPE_MEMDUMP);
     } else {
         g_clear_pointer(&priv->job.current, virDomainJobDataFree);
     }
@@ -3135,7 +3134,6 @@ qemuDomainCoreDumpWithFormat(virDomainPtr dom,
     virQEMUDriver *driver = dom->conn->privateData;
     virDomainObj *vm;
     qemuDomainObjPrivate *priv = NULL;
-    qemuDomainJobDataPrivate *privJobCurrent = NULL;
     bool resume = false, paused = false;
     int ret = -1;
     virObjectEvent *event = NULL;
@@ -3160,8 +3158,8 @@ qemuDomainCoreDumpWithFormat(virDomainPtr dom,
         goto endjob;
 
     priv = vm->privateData;
-    privJobCurrent = priv->job.current->privateData;
-    privJobCurrent->statsType = QEMU_DOMAIN_JOB_STATS_TYPE_SAVEDUMP;
+    qemuDomainJobSetStatsType(priv->job.current,
+                              QEMU_DOMAIN_JOB_STATS_TYPE_SAVEDUMP);
 
     /* Migrate will always stop the VM, so the resume condition is
        independent of whether the stop command is issued.  */
index a48350be7448df5ecd25137a1dafc89e236d3321..fea5e71f4d442f6099cc1fd7ad1fec08ff85c053 100644 (file)
@@ -5853,11 +5853,10 @@ qemuMigrationDstFinish(virQEMUDriver *driver,
 
     if (dom) {
         if (jobData) {
-            qemuDomainJobDataPrivate *privJob = jobData->privateData;
-
             priv->job.completed = g_steal_pointer(&jobData);
             priv->job.completed->status = VIR_DOMAIN_JOB_STATUS_COMPLETED;
-            privJob->statsType = QEMU_DOMAIN_JOB_STATS_TYPE_MIGRATION;
+            qemuDomainJobSetStatsType(jobData,
+                                      QEMU_DOMAIN_JOB_STATS_TYPE_MIGRATION);
         }
 
         if (qemuMigrationCookieFormat(mig, driver, vm,
@@ -6099,7 +6098,6 @@ qemuMigrationJobStart(virQEMUDriver *driver,
                       unsigned long apiFlags)
 {
     qemuDomainObjPrivate *priv = vm->privateData;
-    qemuDomainJobDataPrivate *privJob = priv->job.current->privateData;
     virDomainJobOperation op;
     unsigned long long mask;
 
@@ -6116,7 +6114,8 @@ qemuMigrationJobStart(virQEMUDriver *driver,
     if (qemuDomainObjBeginAsyncJob(driver, vm, job, op, apiFlags) < 0)
         return -1;
 
-    privJob->statsType = QEMU_DOMAIN_JOB_STATS_TYPE_MIGRATION;
+    qemuDomainJobSetStatsType(priv->job.current,
+                              QEMU_DOMAIN_JOB_STATS_TYPE_MIGRATION);
 
     qemuDomainObjSetAsyncJobMask(vm, mask);
     return 0;
index 0703cf00897f8b2839267038b9b9d012b541c2ce..6fa47badd98e9d76183aa7488bfec44439ca983a 100644 (file)
@@ -3597,7 +3597,6 @@ qemuProcessRecoverJob(virQEMUDriver *driver,
                       unsigned int *stopFlags)
 {
     qemuDomainObjPrivate *priv = vm->privateData;
-    qemuDomainJobDataPrivate *privDataJobCurrent = NULL;
     virDomainState state;
     int reason;
     unsigned long long now;
@@ -3666,10 +3665,10 @@ qemuProcessRecoverJob(virQEMUDriver *driver,
          * active. This is possible because we are able to recover the state
          * of blockjobs and also the backup job allows all sub-job types */
         priv->job.current = virDomainJobDataInit(&qemuJobDataPrivateDataCallbacks);
-        privDataJobCurrent = priv->job.current->privateData;
 
+        qemuDomainJobSetStatsType(priv->job.current,
+                                  QEMU_DOMAIN_JOB_STATS_TYPE_BACKUP);
         priv->job.current->operation = VIR_DOMAIN_JOB_OPERATION_BACKUP;
-        privDataJobCurrent->statsType = QEMU_DOMAIN_JOB_STATS_TYPE_BACKUP;
         priv->job.current->status = VIR_DOMAIN_JOB_STATUS_ACTIVE;
         priv->job.current->started = now;
         break;
index 98080ac5f8e85da72971bf636e47aede0b0cb97a..cb2a7eb739647dbe0dba4b8472d601c60bd29191 100644 (file)
@@ -1414,13 +1414,12 @@ qemuSnapshotCreateActiveExternal(virQEMUDriver *driver,
 
     /* do the memory snapshot if necessary */
     if (memory) {
-        qemuDomainJobDataPrivate *privJobCurrent = priv->job.current->privateData;
-
         /* check if migration is possible */
         if (!qemuMigrationSrcIsAllowed(driver, vm, false, 0))
             goto cleanup;
 
-        privJobCurrent->statsType = QEMU_DOMAIN_JOB_STATS_TYPE_SAVEDUMP;
+        qemuDomainJobSetStatsType(priv->job.current,
+                                  QEMU_DOMAIN_JOB_STATS_TYPE_SAVEDUMP);
 
         /* allow the migration job to be cancelled or the domain to be paused */
         qemuDomainObjSetAsyncJobMask(vm, (QEMU_JOB_DEFAULT_MASK |