* [PATCH] Add maxvcpu support
@ 2009-11-25 10:17 Michal Novotny
0 siblings, 0 replies; only message in thread
From: Michal Novotny @ 2009-11-25 10:17 UTC (permalink / raw)
To: 'xen-devel@lists.xensource.com'
[-- Attachment #1: Type: text/plain, Size: 498 bytes --]
Hi,
this is patch to add maxvcpus support to xen xm command. It's using
vcpu_avail bitmask and sets the number of vcpus to maxvcpus if present.
If it's not present, old behavior is preserved.
In domain config file you can define it as follows:
maxvcpus = 4
vcpus = 2
this automatically sets vcpus to 4 and corresponding bitmask to present
2 vcpus in the guest with option to increase it up to 4 vcpus. If
maxvcpus is not present, the old behavior for vcpus is preserved.
Thanks,
Michal
[-- Attachment #2: xen-xm-maxvcpu-support.patch --]
[-- Type: text/x-patch, Size: 1731 bytes --]
diff -r d44371e6e5d6 tools/python/xen/xm/create.py
--- a/tools/python/xen/xm/create.py Tue Nov 24 14:43:07 2009 +0000
+++ b/tools/python/xen/xm/create.py Wed Nov 25 11:06:19 2009 +0100
@@ -1029,6 +1029,24 @@ def make_config(vals):
config = ['vm']
+ def vcpu_conf():
+ maxvcpus = False
+ vcpus = False
+ if hasattr(vals, 'maxvcpus'):
+ maxvcpus = getattr(vals, 'maxvcpus')
+ if hasattr(vals, 'vcpus'):
+ vcpus = getattr(vals, 'vcpus')
+
+ if maxvcpus and not vcpus:
+ config.append(['vcpus', maxvcpus])
+ if maxvcpus and vcpus:
+ config.append(['vcpu_avail', (1 << vcpus) - 1])
+
+ # For case we don't have maxvcpus set but we have vcpus we preserve
+ # old behaviour
+ if not maxvcpus and vcpus:
+ config.append(['vcpus', vcpus])
+
def add_conf(n):
if hasattr(vals, n):
v = getattr(vals, n)
@@ -1037,10 +1055,11 @@ def make_config(vals):
map(add_conf, ['name', 'memory', 'maxmem', 'shadow_memory',
'restart', 'on_poweroff', 'tsc_native', 'nomigrate',
- 'on_reboot', 'on_crash', 'vcpus', 'vcpu_avail', 'features',
- 'on_xend_start', 'on_xend_stop', 'target', 'cpuid',
- 'cpuid_check', 'machine_address_size', 'suppress_spurious_page_faults'])
-
+ 'on_reboot', 'on_crash', 'features', 'on_xend_start',
+ 'on_xend_stop', 'target', 'cpuid', 'cpuid_check',
+ 'machine_address_size', 'suppress_spurious_page_faults'])
+
+ vcpu_conf()
if vals.uuid is not None:
config.append(['uuid', vals.uuid])
if vals.cpu is not None:
[-- Attachment #3: Type: text/plain, Size: 138 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2009-11-25 10:17 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-11-25 10:17 [PATCH] Add maxvcpu support Michal Novotny
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.