[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [PATCH] separates config's 'vcpus' into 'max_vcpus' and 'vcpus'


  • To: Xen Devel <xen-devel@xxxxxxxxxxxxxxxxxxx>
  • From: Ryan Grimm <grimm@xxxxxxxxxx>
  • Date: Mon, 13 Mar 2006 10:29:07 -0600
  • Delivery-date: Mon, 13 Mar 2006 16:32:43 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>

Hi,

This breaks 'vcpus' in xm config file into
-max_vcpus - the max # of vcpus a domain can have in its life
-vcpus - the initial # of vcpus a domain brings up

it won't break any config file that's missing 'max_vcpus'

Thanks,
Ryan

Signed-off-by: Ryan Grimm <grimm@xxxxxxxxxx>

diff -r d8451bb6278c -r 4407086dc27e tools/examples/xmexample1
--- a/tools/examples/xmexample1 Wed Mar  1 16:52:37 2006
+++ b/tools/examples/xmexample1 Thu Mar  2 00:03:20 2006
@@ -26,6 +26,9 @@
 #cpus = ""         # leave to Xen to pick
 #cpus = "0"        # all vcpus run on CPU0
 #cpus = "0-3,5,^1" # run on cpus 0,2,3,5
+
+# Max number of Virtual CPUS a domain can have in its life
+#max_vcpus = 8
 
 # Number of Virtual CPUS to use, default is 1
 #vcpus = 1
diff -r d8451bb6278c -r 4407086dc27e tools/examples/xmexample2
--- a/tools/examples/xmexample2 Wed Mar  1 16:52:37 2006
+++ b/tools/examples/xmexample2 Thu Mar  2 00:03:20 2006
@@ -56,6 +56,9 @@
 #cpus = "0"        # all vcpus run on CPU0
 #cpus = "0-3,5,^1" # run on cpus 0,2,3,5
 #cpus = "%s" % vmid # set based on vmid (mod number of CPUs)
+
+# Max number of Virtual CPUS a domain can have in its life
+max_vcpus = 8
 
 # Number of Virtual CPUS to use, default is 1
 #vcpus = 1
diff -r d8451bb6278c -r 4407086dc27e tools/python/xen/xend/XendDomainInfo.py
--- a/tools/python/xen/xend/XendDomainInfo.py   Wed Mar  1 16:52:37 2006
+++ b/tools/python/xen/xend/XendDomainInfo.py   Thu Mar  2 00:03:20 2006
@@ -121,6 +121,7 @@
     ('uuid',       str),
     ('ssidref',    int),
     ('vcpus',      int),
+    ('max_vcpus',  int), 
     ('vcpu_avail', int),
     ('cpu_weight', float),
     ('memory',     int),
@@ -551,6 +552,7 @@
                 avail = int(1)
 
             defaultInfo('vcpus',        lambda: avail)
+            defaultInfo('max_vcpus',    lambda: 8)
             defaultInfo('online_vcpus', lambda: self.info['vcpus'])
             defaultInfo('max_vcpu_id',  lambda: self.info['vcpus']-1)
             defaultInfo('vcpu_avail',   lambda: (1 << self.info['vcpus']) - 1)
@@ -704,7 +706,7 @@
                 return 'offline'
 
         result = {}
-        for v in range(0, self.info['vcpus']):
+        for v in range(0, self.info['max_vcpus']):
             result["cpu/%d/availability" % v] = availability(v)
         return result
 
@@ -1154,7 +1156,7 @@
         self.recreateDom()
 
         # Set maximum number of vcpus in domain
-        xc.domain_max_vcpus(self.domid, int(self.info['vcpus']))
+        xc.domain_max_vcpus(self.domid, int(self.info['max_vcpus']))
 
 
     def introduceDomain(self):
diff -r d8451bb6278c -r 4407086dc27e tools/python/xen/xm/create.py
--- a/tools/python/xen/xm/create.py     Wed Mar  1 16:52:37 2006
+++ b/tools/python/xen/xm/create.py     Thu Mar  2 00:03:20 2006
@@ -176,6 +176,10 @@
 gopts.var('apic', val='APIC',
           fn=set_int, default=0,
           use="Disable or enable APIC of HVM domain.")
+
+gopts.var('max_vcpus', val='VCPUS',
+          fn=set_int, default=8,
+          use="max # of Virtual CPUS a domain will have in its life.")
 
 gopts.var('vcpus', val='VCPUS',
           fn=set_int, default=1,
@@ -587,7 +591,8 @@
                 config.append([n, v])
 
     map(add_conf, ['name', 'memory', 'ssidref', 'maxmem', 'restart',
-                   'on_poweroff', 'on_reboot', 'on_crash', 'vcpus'])
+                   'on_poweroff', 'on_reboot', 'on_crash', 'vcpus',
+                   'max_vcpus'])
     
     if vals.uuid is not None:
         config.append(['uuid', vals.uuid])

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.