From 2fd5880b3b00cb6549242c613c5215617f29c428 Mon Sep 17 00:00:00 2001 From: Martin Kletzander Date: Mon, 2 Mar 2015 17:14:39 +0100 Subject: [PATCH] conf: De-duplicate scheduling policy enums Since adding the support for scheduler policy settings in commit 8680ea97, there are two enums with the same information. That was caused by rewriting the patch since first draft. Find out thanks to clang, but there was no impact whatsoever. Signed-off-by: Martin Kletzander --- src/conf/domain_conf.c | 20 +++++++------------- src/conf/domain_conf.h | 14 ++------------ src/libvirt_private.syms | 2 -- src/qemu/qemu_process.c | 2 +- 4 files changed, 10 insertions(+), 28 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index c73a221dda..6da02b00ad 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -772,13 +772,6 @@ VIR_ENUM_IMPL(virDomainLoader, "rom", "pflash") -VIR_ENUM_IMPL(virDomainThreadSched, VIR_DOMAIN_THREAD_SCHED_LAST, - "other", /* default */ - "batch", - "idle", - "fifo", - "rr") - /* Internal mapping: subset of block job types that can be present in * XML (remaining types are not two-phase). */ VIR_ENUM_DECL(virDomainBlockJob) @@ -12894,7 +12887,7 @@ virDomainThreadSchedParse(xmlNodePtr node, virDomainThreadSchedParamPtr sp) { char *tmp = NULL; - int sched = 0; + int pol = 0; tmp = virXMLPropString(node, name); if (!tmp) { @@ -12919,16 +12912,17 @@ virDomainThreadSchedParse(xmlNodePtr node, tmp = virXMLPropString(node, "scheduler"); if (tmp) { - if ((sched = virDomainThreadSchedTypeFromString(tmp)) <= 0) { + if ((pol = virProcessSchedPolicyTypeFromString(tmp)) <= 0) { virReportError(VIR_ERR_INTERNAL_ERROR, _("Invalid scheduler attribute: '%s'"), tmp); goto error; } - sp->scheduler = sched; + sp->policy = pol; VIR_FREE(tmp); - if (sp->scheduler >= VIR_DOMAIN_THREAD_SCHED_FIFO) { + if (sp->policy == VIR_PROC_POLICY_FIFO || + sp->policy == VIR_PROC_POLICY_RR) { tmp = virXMLPropString(node, "priority"); if (!tmp) { virReportError(VIR_ERR_XML_ERROR, "%s", @@ -19915,7 +19909,7 @@ virDomainDefFormatInternal(virDomainDefPtr def, if (!(ids = virBitmapFormat(sp->ids))) goto error; virBufferAsprintf(buf, "scheduler)); + ids, virProcessSchedPolicyTypeToString(sp->policy)); VIR_FREE(ids); if (sp->priority) @@ -19930,7 +19924,7 @@ virDomainDefFormatInternal(virDomainDefPtr def, if (!(ids = virBitmapFormat(sp->ids))) goto error; virBufferAsprintf(buf, "scheduler)); + ids, virProcessSchedPolicyTypeToString(sp->policy)); VIR_FREE(ids); if (sp->priority) diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index ee95f19d2b..36bb418a1e 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -50,6 +50,7 @@ # include "virbitmap.h" # include "virstoragefile.h" # include "virseclabel.h" +# include "virprocess.h" /* forward declarations of all device types, required by * virDomainDeviceDef @@ -1813,21 +1814,11 @@ typedef enum { VIR_DOMAIN_CPU_PLACEMENT_MODE_LAST } virDomainCpuPlacementMode; -typedef enum { - VIR_DOMAIN_THREAD_SCHED_OTHER = 0, - VIR_DOMAIN_THREAD_SCHED_BATCH, - VIR_DOMAIN_THREAD_SCHED_IDLE, - VIR_DOMAIN_THREAD_SCHED_FIFO, - VIR_DOMAIN_THREAD_SCHED_RR, - - VIR_DOMAIN_THREAD_SCHED_LAST -} virDomainThreadSched; - typedef struct _virDomainThreadSchedParam virDomainThreadSchedParam; typedef virDomainThreadSchedParam *virDomainThreadSchedParamPtr; struct _virDomainThreadSchedParam { virBitmapPtr ids; - virDomainThreadSched scheduler; + virProcessSchedPolicy policy; int priority; }; @@ -2882,7 +2873,6 @@ VIR_ENUM_DECL(virDomainRNGModel) VIR_ENUM_DECL(virDomainRNGBackend) VIR_ENUM_DECL(virDomainTPMModel) VIR_ENUM_DECL(virDomainTPMBackend) -VIR_ENUM_DECL(virDomainThreadSched) /* from libvirt.h */ VIR_ENUM_DECL(virDomainState) VIR_ENUM_DECL(virDomainNostateReason) diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms index 7b6a386548..6028002054 100644 --- a/src/libvirt_private.syms +++ b/src/libvirt_private.syms @@ -416,8 +416,6 @@ virDomainStateTypeFromString; virDomainStateTypeToString; virDomainTaintTypeFromString; virDomainTaintTypeToString; -virDomainThreadSchedTypeFromString; -virDomainThreadSchedTypeToString; virDomainTimerModeTypeFromString; virDomainTimerModeTypeToString; virDomainTimerNameTypeFromString; diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c index 515402e1d7..7ce6115797 100644 --- a/src/qemu/qemu_process.c +++ b/src/qemu/qemu_process.c @@ -2614,7 +2614,7 @@ qemuProcessSetSchedParams(int id, if (!s) return 0; - return virProcessSetScheduler(pid, s->scheduler, s->priority); + return virProcessSetScheduler(pid, s->policy, s->priority); } static int -- GitLab