Commit Graph
4751 Commits
Author SHA1 Message Date
kaf24@localhost.localdomain aacbdffaf8 Replace mlock() calls with lock_pages().
Signed-off-by: Russell Blaine <russell.blaine@sun.com>
2007-01-26 13:31:59 +00:00
kaf24@localhost.localdomain 15fa409662 32-on-64: New set_address_size domctl for switching to compat mode.
From: Gerd Hoffmann <kraxel@suse.de>
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-01-26 13:27:01 +00:00
Alastair Tse 418a137077 [XEND] Add missing ConsoleController.py
Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-26 02:44:35 +00:00
Emmanuel Ackaouy 62e3530a35 Support transparant gunzipping in the readnotes utility.
Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
---
 tools/xcutils/readnotes.c |   14 ++++++++++++--
 1 file changed, 12 insertions(+), 2 deletions(-)
2007-01-25 22:16:52 +00:00
Emmanuel Ackaouy 2be4a20325 libxc domain builder rewrite, linux builder
use new domain builder for the linux (aka generic elf) loader.

Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
---
 tools/libxc/Makefile              |    7 +-
 tools/libxc/xc_dom_compat_linux.c |  124 ++++++++++++++++++++++++++++++++++++++
 2 files changed, 129 insertions(+), 2 deletions(-)
2007-01-25 22:16:52 +00:00
Emmanuel Ackaouy b4feb14b3d libxc domain builder rewrite, core bits.
Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
---
 tools/libxc/Makefile           |   14
 tools/libxc/xc_dom.h           |  261 +++++++++++++
 tools/libxc/xc_dom_binloader.c |  294 +++++++++++++++
 tools/libxc/xc_dom_boot.c      |  515 +++++++++++++++++++++++++++
 tools/libxc/xc_dom_core.c      |  773 +++++++++++++++++++++++++++++++++++++++++
 tools/libxc/xc_dom_elfloader.c |  283 +++++++++++++++
 tools/libxc/xc_dom_ia64.c      |  118 ++++++
 tools/libxc/xc_dom_powerpc64.c |  100 +++++
 tools/libxc/xc_dom_x86.c       |  559 +++++++++++++++++++++++++++++
 9 files changed, 2917 insertions(+)
2007-01-25 22:16:52 +00:00
Emmanuel Ackaouy a62512128b libxc header fixups.
Make some arch-specific #defines for page table handling
available unconditionally, add a suffix to avoid name clashes.

The versions without suffix are defined depending on the
architecture like they used to, so code using them continues
to work.

Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
---
 tools/libxc/xg_private.h |  114 +++++++++++++++++++++++++++--------------------
 1 file changed, 67 insertions(+), 47 deletions(-)
2007-01-25 22:16:52 +00:00
Emmanuel Ackaouy 8db57dddd1 Add more xc_error_code values.
XC_INVALID_PARAM
  such as asking for features unsupported by either xen or guest kernel.
XC_OUT_OF_MEMORY
  no comment ;)

Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
---
 tools/libxc/xc_private.c |    4 ++++
 tools/libxc/xenctrl.h    |    2 ++
 2 files changed, 6 insertions(+)
2007-01-25 22:16:52 +00:00
Emmanuel Ackaouy eb4166af59 Generate headers with arch-specific structs.
This patch adds a script to generate headers with arch-specific
structs which can be included on any architecture.  Can be used
to deal with structs of "foreign" architectures, needed for
32-on-64 support for example.

Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
---
 Makefile                                  |   11 +-
 tools/Rules.mk                            |    2
 xen/Makefile                              |    4
 xen/include/public/foreign/Makefile       |   37 +++++++
 xen/include/public/foreign/mkchecker.py   |   58 +++++++++++
 xen/include/public/foreign/mkheader.py    |  153 ++++++++++++++++++++++++++++++
 xen/include/public/foreign/reference.size |   17 +++
 xen/include/public/foreign/structs.py     |   52 ++++++++++
 8 files changed, 331 insertions(+), 3 deletions(-)
2007-01-25 22:16:52 +00:00
Emmanuel Ackaouy 0d2b8607e3 libelf: use for readnotes utility.
This patch makes the readnotes utility use libelf.

Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
---
 tools/xcutils/readnotes.c |  277 +++++++---------------------------------------
 1 file changed, 45 insertions(+), 232 deletions(-)
2007-01-25 22:16:52 +00:00
Emmanuel Ackaouy 0b7ba47b46 libelf: use for hvm builder.
This patch switches over the hvm domain builder to libelf
(for loading hvmloader).

Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
---
 tools/libxc/xc_hvm_build.c |  220 +++++++++++++--------------------------------
 1 file changed, 65 insertions(+), 155 deletions(-)
2007-01-25 22:16:52 +00:00
Emmanuel Ackaouy 98d5cfb308 libelf: add to libxc
This patch makes libelf available to the tools, by symlinking the source
files and compiling them into libxc.

Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
---
 tools/libxc/Makefile |   15 +++++++++++++++
 1 file changed, 15 insertions(+)
2007-01-25 22:16:52 +00:00
Emmanuel Ackaouy eca96c65d9 add libelf: an ELF binary parser library.
This patch adds a library with a small collection of helper functions
to parse and load elf binaries.  The library handles endianess and
elfsize at runtime.

The patch also shuffles around the include files a bit.  Now there is
*one* include file holding all the elf structures
(xen/include/public/elfstructs.h) which is included by everyone who
needs them.

It's dead code with this patch only, putting the code into use happens
in followup patches.

Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
---
 tools/libxc/xc_elf.h                |  525 -----------------------------------
 xen/arch/x86/boot/mkelf32.c         |    2
 xen/common/Makefile                 |    2
 xen/common/libelf/Makefile          |    4
 xen/common/libelf/README            |    1
 xen/common/libelf/libelf-dominfo.c  |  420 ++++++++++++++++++++++++++++
 xen/common/libelf/libelf-loader.c   |  156 ++++++++++
 xen/common/libelf/libelf-private.h  |   51 +++
 xen/common/libelf/libelf-relocate.c |  345 +++++++++++++++++++++++
 xen/common/libelf/libelf-tools.c    |  225 +++++++++++++++
 xen/include/public/elfstructs.h     |  527 ++++++++++++++++++++++++++++++++++++
 xen/include/public/libelf.h         |  238 ++++++++++++++++
 xen/include/xen/elf.h               |  490 ---------------------------------
 13 files changed, 1972 insertions(+), 1014 deletions(-)
2007-01-25 22:16:52 +00:00
Alastair Tse 690dd07a38 [XEND] Preliminary console support in Xen API
Made serial/vnc consoles a 'fake' device so that we can take advantage
of storing state information in xenstore.

Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-25 18:54:25 +00:00
Alastair Tse 4b3c5bc127 [XEND] Fix HVM guest creation via Xen API
Fixed some of the type declarations for HVM devices, add better
handling for type mismatch errors.

Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-25 18:50:08 +00:00
Alastair Tse b41243501b [XEND] Fix bad patch merge for XendMonitor
Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-25 17:00:18 +00:00
Alastair Tse 2f8bdad823 [XEND] Ignore socket.shutdown() exceptions
Add further comments about why that shutdown() exists.

Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-25 14:52:36 +00:00
kfraser@localhost.localdomain bec755ea3c During suspend, return immediately with a failure if the domain will
never suspend, instead of pointlessly retrying.

Signed-off-by: John Levon <john.levon@sun.com>
2007-01-25 12:30:25 +00:00
Alastair Tse a68b530fa7 [XEND] Allow TCP XMLRPC address:port to be configured, if enabled.
Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-25 11:58:00 +00:00
Ewan Mellor a5ae2bb063 Have the sxp parsing cope when the cpus field is a list, which can happen
after a reboot.

From Daniele Palumbo <daniele@retaggio.net>.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2007-01-25 10:34:17 +00:00
Alastair Tse f3dac803d3 [XEND] Remove usage of set() in XendMonitor as it is a py2.4+ feature
Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-25 10:29:33 +00:00
kfraser@localhost.localdomain c92a94b6e1 bimodal xenfb daemon: Fixes and cleanups.
From: Gerd Hoffmann <kraxel@suse.de>
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-01-24 18:23:23 +00:00
Alastair Tse ba01378600 [XEND] Fix typo in XendNode
Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-24 18:06:14 +00:00
Ewan Mellor 787ef778e4 Fix device reordering that occurs when the config gets read into dictionaries.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
2007-01-24 16:48:41 +00:00
kfraser@localhost.localdomain 46c01e0595 Make domctl/sysctl interfaces 32-/64-bit invariant.
This kills off a fair amount of unpleasant CONFIG_COMPAT shimming and
avoids needing to keep the compat paths in sync as these interfaces
continue to develop.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-01-24 16:33:19 +00:00
Alastair Tse 16324b1aff [XEND] Add debug class to Xen API plus non-standard debug.wait().
debug.wait(seconds) will just do a time.sleep() so the task progress
support can be tested.

Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-24 15:59:09 +00:00
Alastair Tse 7d65668740 [XEND] Move decorate() to XendAPI.__new__ and have a static flag to
ensure it only runs at instantiation time, and only once per Xend
instance. Otherwise, decorate() runs on every invocation of
/usr/sbin/xend, even if it is xend stop.

Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-24 15:57:10 +00:00
Alastair Tse 2478f46117 [XENAPI] Make test script attempt to login with blank credentials
before prompting for passwords.

Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-24 15:52:26 +00:00
Alastair Tse 64444f844e [XEND] Cleanup old domains in statistics monitor.
Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-24 15:50:58 +00:00
Alastair Tse 673b964755 [XENAPI] Add vif-list to xapi.py script
Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-24 15:50:02 +00:00
Alastair Tse 464ed488c6 [XEND] Output exception to log files if XendAPI fails to instantiate.
Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-24 15:49:32 +00:00
Alastair Tse b712f9023e [XENAPI] Update test scripts to move from VBD.image to creating VDI's
with the uri attribute.

Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-24 15:48:58 +00:00
Alastair Tse d3cc627bf9 [XEND] Add support for multiple storage repositories.
Splits XendStorageRepository into a helper class and
XendQCowStorageRepo as the QCoW File backed repository. This gives us
the opportunity to introduce a pseudo storage repository to represent
the old way of specifying block devices. This is the
XendLocalStorageRepo.

Note that this still introduces a non-Xen API 'uri' attribute to VDIs
in order to support querying VDIs for their actual location relative
to the Xen host.

The QCoW backed repository is now named QCoW, and the pseudo-SR is
named Local.

This removes the 'image' attribute backwards-compat hack in VBDs in
the Xen API.

Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-24 15:47:31 +00:00
Alastair Tse cd402c7539 [XEND] Add missing Xen API methods
* Added session.get_all, task.get_by_name_label,
  host.get_by_name_label, VM.add_to_otherConfig,
  VM.remove_from_otherConfig

* Added implementations for VM.get_VCPUs_policy,
  VM.get_platform_std_vga, VM.get_vm_by_uuid,
  VM.get_platform_localtime, VM.get_platform_clock_offset,
  VM.get_platform_enable_audio, VM.get_platform_keymap,
  VM.get_otherConfig, VM.set_actions_after_shutdown,
  VM.set_actions_after_reboot, VM.set_actions_after_suspend,
  VM.set_actions_after_crash, VM.set_platform_std_VGA,
  VM.set_platform_serial, VM.set_platform_keymap,
  VM.set_platform_localtime, VM.set_platform_clock_offset,
  VM.set_platform_enable_audio, VM.set_otherConfig, VBD.destroy,
  VBD.get_io_read_kbs, VBD.get_io_write_kbs, VBD.get_all, VIF.destroy,
  VIF.get_VM, VIF.get_name, VIF.get_MTU, VIF.get_MAC, VIF.get_type,
  VIF.get_device, VIF.get_io_read_kbs, VIF.get_io_write_kbs,
  VIF.get_all, VTPM.destroy, VTPM.get_all

* Save devid of a device on creation in XendDomainInfo

Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-24 14:25:21 +00:00
Alastair Tse e5e2ccbed4 [XEND] Make sure UUID in state store are not stored as unicode
objects.

Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-24 13:58:06 +00:00
Alastair Tse 697a75a8dd [XEND] Prevent invalid arguments for destroy event channels.
Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-24 13:54:37 +00:00
Alastair Tse ffe6776819 Test scripts for Xen API updated to support Async support 2007-01-24 13:49:25 +00:00
Alastair Tse c7cac39d2d [XEND] Add Task support in Xen API implementation.
Added progress tracking to some common methods like VM.start so the
progress during async invocation.

Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-24 13:26:26 +00:00
Alastair Tse d3774c5c93 [XEND] Add missing XendMonitor.py
Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-24 12:26:19 +00:00
Alastair Tse a19ccaa253 [XEND] Add simple VCPUs, VBDs, VIFs statistics monitoring
Keep track of xentop like statistics to expose through the Xen API

Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-24 12:09:41 +00:00
Alastair Tse e8d1d26031 [XEND] Strip suffix from device name and add support for 'VBD.type'
Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-24 12:07:54 +00:00
kfraser@localhost.localdomain 539471abbe [QEMU] Clear TD status field explicitly when it's fetched.
In current Qemu-dm, UHC will set some status bits of TD in status
updating stage, but never process the status bit if relevant condition
does not occur, leaving it as it is. When a TD is fetched with some
status bits are set to 1, it will return to Guest OS with these bits
set to 1 even this TD is executed successfully. Some Windows OS,
e.g. Windows 2000, will check status bits of TD in UHC interrupt
routine, treat it as a unsuccessful one if some status bits are set to
1 and discard the data. Other Windows OS just check USBSTS of UHC,
ignoring status field of TD unless the value of USBSTS indicates
occurrence of error.

With this patch, USB mouse/tablet in Windows 2000 works correctly.

Signed-off-by: Xinmei Huang  <xinmei.huang@intel.com>
2007-01-24 10:44:32 +00:00
kfraser@localhost.localdomain 91421c3cf0 Fix error message in network-bridge script.
From: Luke Crawford <lsc@prgmr.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-01-24 10:22:06 +00:00
kfraser@localhost.localdomain a3fb2cebf9 libxenguest: Fix xc_resume() build for non-x86.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-01-24 10:18:44 +00:00
john.levon@sun.com 95d3856e97 Close save-after-restore race.
Make xc_linux_save() wait for the frame_list_list MFN to be updated by the
domain before trying to use it. Make Linux set the top-level MFN /after/
updating the other MFN lists.

Signed-off-by: John Levon <john.levon@sun.com>
2007-01-23 19:06:31 -08:00
kfraser@localhost.localdomain 1fd75e7150 [LIBXC] Provide weak stub default implementations of xc_hvm_save() and
xc_hvm_restore() for architectures with no full implementation.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-01-23 15:58:05 +00:00
kfraser@localhost.localdomain 7bd46b4635 bimodal pvfb backend: Deal with both 32 and 64 bit frontends.
Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
2007-01-23 14:57:01 +00:00
Alastair Tse 54210714d5 [XM-TEST] Allow building of ramdisk on x86_64
Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-23 11:39:32 +00:00
Alastair Tse dc59dbf327 [XEND] Save model attribute for HVM VIFs
This solves the problem of HVM VIFs forgetting their model config on
reboot.

http://bugzilla.xensource.com/bugzilla/show_bug.cgi?id=867

Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-22 17:31:15 +00:00
Alastair Tse c1e978c7cf [XEND] Fix get_dev_property_by_uuid
This patch replaces calls to get_dev_property() by calls to
get_dev_property_by_uuid() in XenAPI.py and fixes the implementation
of get_dev_property_by_uuid.

I am adding a test case to the xapi grouptests to verify the fixes.
There's a FIXME note in the test case which should be looked at.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
2007-01-22 17:23:53 +00:00