2008-03-15 00:07:14 +01:00
|
|
|
Index: xen-3.2.1-testing/tools/python/xen/lowlevel/xc/xc.c
|
2008-03-06 02:36:51 +01:00
|
|
|
===================================================================
|
2008-03-15 00:07:14 +01:00
|
|
|
--- xen-3.2.1-testing.orig/tools/python/xen/lowlevel/xc/xc.c
|
|
|
|
+++ xen-3.2.1-testing/tools/python/xen/lowlevel/xc/xc.c
|
|
|
|
@@ -638,14 +638,14 @@ static PyObject *pyxc_hvm_build(XcObject
|
2008-03-06 02:36:51 +01:00
|
|
|
int i;
|
|
|
|
#endif
|
|
|
|
char *image;
|
|
|
|
- int memsize, vcpus = 1, acpi = 0, apic = 1;
|
|
|
|
+ int memsize, vcpus = 1, acpi = 0, apic = 1, extid = 0;
|
|
|
|
|
|
|
|
static char *kwd_list[] = { "domid",
|
|
|
|
- "memsize", "image", "vcpus", "acpi",
|
|
|
|
+ "memsize", "image", "vcpus", "extid", "acpi",
|
|
|
|
"apic", NULL };
|
|
|
|
- if ( !PyArg_ParseTupleAndKeywords(args, kwds, "iis|iii", kwd_list,
|
|
|
|
+ if ( !PyArg_ParseTupleAndKeywords(args, kwds, "iis|iiii", kwd_list,
|
|
|
|
&dom, &memsize,
|
|
|
|
- &image, &vcpus, &acpi, &apic) )
|
|
|
|
+ &image, &vcpus, &extid, &acpi, &apic) )
|
|
|
|
return NULL;
|
|
|
|
|
|
|
|
if ( xc_hvm_build(self->xc_handle, dom, memsize, image) != 0 )
|
2008-03-15 00:07:14 +01:00
|
|
|
@@ -670,6 +670,7 @@ static PyObject *pyxc_hvm_build(XcObject
|
2008-03-06 02:36:51 +01:00
|
|
|
va_hvm->checksum = -sum;
|
|
|
|
munmap(va_map, XC_PAGE_SIZE);
|
|
|
|
#endif
|
|
|
|
+ xc_set_hvm_param(self->xc_handle, dom, HVM_PARAM_EXTEND_HYPERVISOR, extid);
|
|
|
|
|
|
|
|
return Py_BuildValue("{}");
|
|
|
|
}
|
2008-03-15 00:07:14 +01:00
|
|
|
Index: xen-3.2.1-testing/tools/python/xen/xend/XendConfig.py
|
2008-03-06 02:36:51 +01:00
|
|
|
===================================================================
|
2008-03-15 00:07:14 +01:00
|
|
|
--- xen-3.2.1-testing.orig/tools/python/xen/xend/XendConfig.py
|
|
|
|
+++ xen-3.2.1-testing/tools/python/xen/xend/XendConfig.py
|
2008-03-27 23:24:06 +01:00
|
|
|
@@ -139,6 +139,7 @@ XENAPI_PLATFORM_CFG_TYPES = {
|
2008-03-15 00:07:14 +01:00
|
|
|
'monitor': int,
|
|
|
|
'nographic': int,
|
|
|
|
'pae' : int,
|
|
|
|
+ 'extid' : int,
|
|
|
|
'rtc_timeoffset': int,
|
|
|
|
'serial': str,
|
|
|
|
'sdl': int,
|
|
|
|
Index: xen-3.2.1-testing/tools/python/xen/xend/image.py
|
2008-03-06 02:36:51 +01:00
|
|
|
===================================================================
|
2008-03-15 00:07:14 +01:00
|
|
|
--- xen-3.2.1-testing.orig/tools/python/xen/xend/image.py
|
|
|
|
+++ xen-3.2.1-testing/tools/python/xen/xend/image.py
|
2008-04-12 21:41:18 +02:00
|
|
|
@@ -441,6 +441,7 @@ class HVMImageHandler(ImageHandler):
|
2008-03-06 02:36:51 +01:00
|
|
|
|
|
|
|
self.apic = int(vmConfig['platform'].get('apic', 0))
|
|
|
|
self.acpi = int(vmConfig['platform'].get('acpi', 0))
|
|
|
|
+ self.extid = int(vmConfig['platform'].get('extid', 0))
|
|
|
|
self.guest_os_type = vmConfig['platform'].get('guest_os_type')
|
|
|
|
|
|
|
|
# Return a list of cmd line args to the device models based on the
|
2008-04-12 21:41:18 +02:00
|
|
|
@@ -531,6 +532,7 @@ class HVMImageHandler(ImageHandler):
|
2008-03-06 02:36:51 +01:00
|
|
|
log.debug("store_evtchn = %d", store_evtchn)
|
|
|
|
log.debug("memsize = %d", mem_mb)
|
|
|
|
log.debug("vcpus = %d", self.vm.getVCpuCount())
|
|
|
|
+ log.debug("extid = %d", self.extid)
|
|
|
|
log.debug("acpi = %d", self.acpi)
|
|
|
|
log.debug("apic = %d", self.apic)
|
|
|
|
|
2008-04-12 21:41:18 +02:00
|
|
|
@@ -538,6 +540,7 @@ class HVMImageHandler(ImageHandler):
|
2008-03-06 02:36:51 +01:00
|
|
|
image = self.kernel,
|
|
|
|
memsize = mem_mb,
|
|
|
|
vcpus = self.vm.getVCpuCount(),
|
|
|
|
+ extid = self.extid,
|
|
|
|
acpi = self.acpi,
|
|
|
|
apic = self.apic)
|
|
|
|
rc['notes'] = { 'SUSPEND_CANCEL': 1 }
|
2008-03-15 00:07:14 +01:00
|
|
|
Index: xen-3.2.1-testing/tools/python/xen/xm/create.py
|
2008-03-06 02:36:51 +01:00
|
|
|
===================================================================
|
2008-03-15 00:07:14 +01:00
|
|
|
--- xen-3.2.1-testing.orig/tools/python/xen/xm/create.py
|
|
|
|
+++ xen-3.2.1-testing/tools/python/xen/xm/create.py
|
2008-03-06 02:36:51 +01:00
|
|
|
@@ -203,6 +203,10 @@ gopts.var('timer_mode', val='TIMER_MODE'
|
|
|
|
use="""Timer mode (0=delay virtual time when ticks are missed;
|
|
|
|
1=virtual time is always wallclock time.""")
|
|
|
|
|
|
|
|
+gopts.var('extid', val='EXTID',
|
|
|
|
+ fn=set_int, default=0,
|
|
|
|
+ use="Specify extention ID for a HVM domain.")
|
|
|
|
+
|
|
|
|
gopts.var('acpi', val='ACPI',
|
|
|
|
fn=set_int, default=1,
|
|
|
|
use="Disable or enable ACPI of HVM domain.")
|
2008-03-15 00:07:14 +01:00
|
|
|
@@ -734,7 +738,7 @@ def configure_vifs(config_devs, vals):
|
2008-03-06 02:36:51 +01:00
|
|
|
def configure_hvm(config_image, vals):
|
|
|
|
"""Create the config for HVM devices.
|
|
|
|
"""
|
|
|
|
- args = [ 'device_model', 'pae', 'vcpus', 'boot', 'fda', 'fdb', 'timer_mode',
|
|
|
|
+ args = [ 'device_model', 'pae', 'extid', 'vcpus', 'boot', 'fda', 'fdb', 'timer_mode',
|
|
|
|
'localtime', 'serial', 'stdvga', 'isa', 'nographic', 'soundhw',
|
|
|
|
'vnc', 'vncdisplay', 'vncunused', 'vncconsole', 'vnclisten',
|
|
|
|
'sdl', 'display', 'xauthority', 'rtc_timeoffset', 'monitor',
|