[libvirt] [PATCH 08/10] Move virCacheKernel enum implemetation from conf/ to util/

Martin Kletzander mkletzan at redhat.com
Thu Jun 7 13:54:29 UTC 2018


It will be used in that file later on, plus it makes sense for all the
implementations to be in same place.  Also comment each one of them nicely and
add a comment explaining why they all need to end with the same _LAST value.

Signed-off-by: Martin Kletzander <mkletzan at redhat.com>
---
 src/conf/capabilities.c  |  6 ------
 src/libvirt_private.syms |  2 ++
 src/util/virresctrl.c    | 19 ++++++++++++++-----
 src/util/virresctrl.h    |  1 +
 4 files changed, 17 insertions(+), 11 deletions(-)

diff --git a/src/conf/capabilities.c b/src/conf/capabilities.c
index 978edf871943..7a810efa6662 100644
--- a/src/conf/capabilities.c
+++ b/src/conf/capabilities.c
@@ -1544,12 +1544,6 @@ virCapabilitiesInitPages(virCapsPtr caps)
     return ret;
 }
 
-/* Cache name mapping for Linux kernel naming */
-VIR_ENUM_DECL(virCacheKernel);
-VIR_ENUM_IMPL(virCacheKernel, VIR_CACHE_TYPE_LAST,
-              "Unified",
-              "Instruction",
-              "Data")
 
 bool
 virCapsHostCacheBankEquals(virCapsHostCacheBankPtr a,
diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms
index 20ec8760ec27..a4a0c95b474d 100644
--- a/src/libvirt_private.syms
+++ b/src/libvirt_private.syms
@@ -2619,6 +2619,8 @@ virRandomInt;
 
 
 # util/virresctrl.h
+virCacheKernelTypeFromString;
+virCacheKernelTypeToString;
 virCacheTypeFromString;
 virCacheTypeToString;
 virResctrlAllocAddPID;
diff --git a/src/util/virresctrl.c b/src/util/virresctrl.c
index 4e35b19649ca..481577bbb9f6 100644
--- a/src/util/virresctrl.c
+++ b/src/util/virresctrl.c
@@ -48,15 +48,24 @@ VIR_LOG_INIT("util.virresctrl")
 #define SYSFS_RESCTRL_PATH "/sys/fs/resctrl"
 
 
-/* Our naming for cache types and scopes */
+/* Following are three different enum implementations for the same enum.  Each
+ * one of them helps translating to/from strings for different interfaces.  The
+ * delimiter must be VIR_CACHE_TYPE_LAST for all of them in order to stay
+ * consistent in between all of them. */
+
+/* Cache name mapping for Linux kernel naming. */
+VIR_ENUM_IMPL(virCacheKernel, VIR_CACHE_TYPE_LAST,
+              "Unified",
+              "Instruction",
+              "Data")
+
+/* Cache name mapping for our XML naming. */
 VIR_ENUM_IMPL(virCache, VIR_CACHE_TYPE_LAST,
               "both",
               "code",
               "data")
-/*
- * This is the same enum, but for the resctrl naming
- * of the type (L<level><type>)
- */
+
+/* Cache name mapping for resctrl interface naming. */
 VIR_ENUM_DECL(virResctrl)
 VIR_ENUM_IMPL(virResctrl, VIR_CACHE_TYPE_LAST,
               "",
diff --git a/src/util/virresctrl.h b/src/util/virresctrl.h
index a348fa7ab195..9052a2b19a02 100644
--- a/src/util/virresctrl.h
+++ b/src/util/virresctrl.h
@@ -34,6 +34,7 @@ typedef enum {
 } virCacheType;
 
 VIR_ENUM_DECL(virCache);
+VIR_ENUM_DECL(virCacheKernel);
 
 
 typedef struct _virResctrlInfoPerCache virResctrlInfoPerCache;
-- 
2.17.1




More information about the libvir-list mailing list