From 853f0fdfd922ac4c8826f521c9c0097ecee3ee28 Mon Sep 17 00:00:00 2001 From: Osier Yang Date: Tue, 29 Mar 2011 21:33:36 +0800 Subject: [PATCH] cputune: Add data structures presenting cputune XML Also related new functions' declaration, and expose the new introduced functions in libvirt_private.syms. v1 - v2: Don't expose "virAllocVar" in libvirt_private.syms --- src/conf/domain_conf.h | 26 ++++++++++++++++++++++++++ src/libvirt_private.syms | 3 +++ 2 files changed, 29 insertions(+) diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h index 1e8223f5d9..10e73cbc19 100644 --- a/src/conf/domain_conf.h +++ b/src/conf/domain_conf.h @@ -1029,6 +1029,21 @@ void virDomainSnapshotObjListRemove(virDomainSnapshotObjListPtr snapshots, int virDomainSnapshotHasChildren(virDomainSnapshotObjPtr snap, virDomainSnapshotObjListPtr snapshots); +typedef struct _virDomainVcpupinDef virDomainVcpupinDef; +typedef virDomainVcpupinDef *virDomainVcpupinDefPtr; +struct _virDomainVcpupinDef { + int vcpuid; + char *cpumask; +}; + +int virDomainVcpupinIsDuplicate(virDomainVcpupinDefPtr *def, + int nvcpupin, + int vcpu); + +virDomainVcpupinDefPtr virDomainVcpupinFindByVcpu(virDomainVcpupinDefPtr *def, + int nvcpupin, + int vcpu); + /* Guest VM main configuration */ typedef struct _virDomainDef virDomainDef; typedef virDomainDef *virDomainDefPtr; @@ -1057,6 +1072,12 @@ struct _virDomainDef { int cpumasklen; char *cpumask; + struct { + unsigned long shares; + int nvcpupin; + virDomainVcpupinDefPtr *vcpupin; + } cputune; + /* These 3 are based on virDomainLifeCycleAction enum flags */ int onReboot; int onPoweroff; @@ -1256,6 +1277,11 @@ int virDomainCpuSetParse(const char **str, char *virDomainCpuSetFormat(char *cpuset, int maxcpu); +int virDomainVcpupinAdd(virDomainDefPtr def, + unsigned char *cpumap, + int maplen, + int vcpu); + int virDomainDiskInsert(virDomainDefPtr def, virDomainDiskDefPtr disk); void virDomainDiskInsertPreAlloced(virDomainDefPtr def, diff --git a/src/libvirt_private.syms b/src/libvirt_private.syms index 103d8bf8d0..65a86d3de2 100644 --- a/src/libvirt_private.syms +++ b/src/libvirt_private.syms @@ -320,6 +320,9 @@ virDomainTimerTickpolicyTypeFromString; virDomainTimerTickpolicyTypeToString; virDomainTimerTrackTypeFromString; virDomainTimerTrackTypeToString; +virDomainVcpupinAdd; +virDomainVcpupinFindByVcpu; +virDomainVcpupinIsDuplicate; virDomainVideoDefFree; virDomainVideoDefaultRAM; virDomainVideoDefaultType;