From f1d7625e135add2550dd4c9ae43f905359633734 Mon Sep 17 00:00:00 2001 From: Martin Kletzander Date: Thu, 8 Feb 2018 15:55:09 +0100 Subject: [PATCH] Move virCacheKernel enum implemetation from conf/ to util/ MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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 Reviewed-by: Ján Tomko --- 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 978edf8719..7a810efa66 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 3f54790297..2245101590 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 06a85d0d40..7796e43288 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) - */ + +/* 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 a348fa7ab1..9052a2b19a 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; -- GitLab