[libvirt] [PATCH 3/8] cputune: Add data structures presenting cputune xml

Osier Yang jyang at redhat.com
Tue Mar 29 06:32:21 UTC 2011


Also related new functions' declaration.
---
 src/conf/domain_conf.h   |   26 ++++++++++++++++++++++++++
 src/libvirt_private.syms |    4 ++++
 2 files changed, 30 insertions(+), 0 deletions(-)

diff --git a/src/conf/domain_conf.h b/src/conf/domain_conf.h
index 1e8223f..10e73cb 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 b1a357b..d32bd42 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;
@@ -576,6 +579,7 @@ virVMOperationTypeToString;
 # memory.h
 virAlloc;
 virAllocN;
+virAllocVar;
 virExpandN;
 virFree;
 virReallocN;
--
1.7.4




More information about the libvir-list mailing list