[libvirt] [PATCH 4/6] conf: Punt 'driverName' back to disk definition structure

Peter Krempa pkrempa at redhat.com
Wed Apr 18 10:55:41 UTC 2018


Currently it is not used in backing chains and does not seem that we
will need to use it so return it back to the disk definition. Thankfully
most accesses are done via the accessors.

Signed-off-by: Peter Krempa <pkrempa at redhat.com>
---
 src/conf/domain_conf.c    | 11 ++++++-----
 src/conf/domain_conf.h    |  2 ++
 src/util/virstoragefile.c |  6 ------
 src/util/virstoragefile.h |  1 -
 4 files changed, 8 insertions(+), 12 deletions(-)

diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index 987f65df23..1ae742a110 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -1790,6 +1790,7 @@ virDomainDiskDefFree(virDomainDiskDefPtr def)
     VIR_FREE(def->dst);
     virStorageSourceFree(def->mirror);
     VIR_FREE(def->wwn);
+    VIR_FREE(def->driverName);
     VIR_FREE(def->vendor);
     VIR_FREE(def->product);
     VIR_FREE(def->domain_name);
@@ -1854,7 +1855,7 @@ virDomainDiskEmptySource(virDomainDiskDefPtr def)
 const char *
 virDomainDiskGetDriver(const virDomainDiskDef *def)
 {
-    return def->src->driverName;
+    return def->driverName;
 }


@@ -1862,11 +1863,11 @@ int
 virDomainDiskSetDriver(virDomainDiskDefPtr def, const char *name)
 {
     int ret;
-    char *tmp = def->src->driverName;
+    char *tmp = def->driverName;

-    ret = VIR_STRDUP(def->src->driverName, name);
+    ret = VIR_STRDUP(def->driverName, name);
     if (ret < 0)
-        def->src->driverName = tmp;
+        def->driverName = tmp;
     else
         VIR_FREE(tmp);
     return ret;
@@ -9132,7 +9133,7 @@ virDomainDiskDefDriverParseXML(virDomainDiskDefPtr def,
     char *tmp = NULL;
     int ret = -1;

-    def->src->driverName = virXMLPropString(cur, "name");
+    def->driverName = virXMLPropString(cur, "name");

     if ((tmp = virXMLPropString(cur, "cache")) &&
         (def->cachemode = virDomainDiskCacheTypeFromString(tmp)) < 0) {
diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h
index 3a3ec6f6c3..7e20b8837b 100644
--- a/src/conf/domain_conf.h
+++ b/src/conf/domain_conf.h
@@ -644,6 +644,8 @@ struct _virDomainDiskDef {

     virDomainBlockIoTuneInfo blkdeviotune;

+    char *driverName;
+
     char *serial;
     char *wwn;
     char *vendor;
diff --git a/src/util/virstoragefile.c b/src/util/virstoragefile.c
index 67b9ec71ac..531540ac91 100644
--- a/src/util/virstoragefile.c
+++ b/src/util/virstoragefile.c
@@ -2048,7 +2048,6 @@ virStorageSourceCopy(const virStorageSource *src,

     if (VIR_STRDUP(ret->path, src->path) < 0 ||
         VIR_STRDUP(ret->volume, src->volume) < 0 ||
-        VIR_STRDUP(ret->driverName, src->driverName) < 0 ||
         VIR_STRDUP(ret->relPath, src->relPath) < 0 ||
         VIR_STRDUP(ret->backingStoreRaw, src->backingStoreRaw) < 0 ||
         VIR_STRDUP(ret->snapshot, src->snapshot) < 0 ||
@@ -2135,10 +2134,6 @@ virStorageSourceInitChainElement(virStorageSourcePtr newelem,
         virStorageSourceSeclabelsCopy(newelem, old) < 0)
         goto cleanup;

-    if (!newelem->driverName &&
-        VIR_STRDUP(newelem->driverName, old->driverName) < 0)
-        goto cleanup;
-
     newelem->shared = old->shared;
     newelem->readonly = old->readonly;

@@ -2266,7 +2261,6 @@ virStorageSourceClear(virStorageSourcePtr def)
     VIR_FREE(def->snapshot);
     VIR_FREE(def->configFile);
     virStorageSourcePoolDefFree(def->srcpool);
-    VIR_FREE(def->driverName);
     virBitmapFree(def->features);
     VIR_FREE(def->compat);
     virStorageEncryptionFree(def->encryption);
diff --git a/src/util/virstoragefile.h b/src/util/virstoragefile.h
index 596746ccb7..d129e81978 100644
--- a/src/util/virstoragefile.h
+++ b/src/util/virstoragefile.h
@@ -246,7 +246,6 @@ struct _virStorageSource {

     virObjectPtr privateData;

-    char *driverName;
     int format; /* virStorageFileFormat in domain backing chains, but
                  * pool-specific enum for storage volumes */
     virBitmapPtr features;
-- 
2.16.2




More information about the libvir-list mailing list