From: Martin Kletzander Date: Mon, 2 Mar 2015 16:14:39 +0000 (+0100) Subject: conf: De-duplicate scheduling policy enums X-Git-Tag: v1.2.13.1~67 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=d048e8ec9ef5a72cb2fd471883fb9f11ab3f6c2e;p=thirdparty%2Flibvirt.git 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 (cherry picked from commit 2fd5880b3b00cb6549242c613c5215617f29c428) --- diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index 32809c0600..4ff26d5e04 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) @@ -12867,7 +12860,7 @@ virDomainThreadSchedParse(xmlNodePtr node, virDomainThreadSchedParamPtr sp) { char *tmp = NULL; - int sched = 0; + int pol = 0; tmp = virXMLPropString(node, name); if (!tmp) { @@ -12892,16 +12885,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", @@ -19892,7 +19886,7 @@ virDomainDefFormatInternal(virDomainDefPtr def, if (!(ids = virBitmapFormat(sp->ids))) goto error; virBufferAsprintf(buf, "scheduler)); + ids, virProcessSchedPolicyTypeToString(sp->policy)); VIR_FREE(ids); if (sp->priority) @@ -19907,7 +19901,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 b6c0a52d32..bca1b94f4c 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; }; @@ -2885,7 +2876,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 6674c679dc..933891fb80 100644 --- a/src/libvirt_private.syms +++ b/src/libvirt_private.syms @@ -415,8 +415,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 4beb0cf520..846eba99e2 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