Commit Graph
4763 Commits
Author SHA1 Message Date
kaf24@localhost.localdomain 4e109e6d68 Reject xm sched-* comands for other than the in-use scheduler.
Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>
2007-01-28 09:35:00 +00:00
kaf24@localhost.localdomain fa4af86617 Fix xentop error return code if passed unrecognised options.
Signed-off-by: Masaki Kanno <kanno.masaki@jp.fujitsu.com>
2007-01-28 09:33:47 +00:00
kaf24@localhost.localdomain 249c2a8ce6 [HVM] Allow HVM guest to request invalidation of foreign mappings via
an I/O port write.
Signed-off-by: Dexuan Cui <dexuan.cui@intel.com>
2007-01-27 13:32:27 +00:00
kaf24@localhost.localdomain 23791a54c2 [HVM] Fix some BIOS build warnings.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-01-26 16:56:26 +00:00
kaf24@localhost.localdomain 539c6224a5 [TCGBIOS] Fix some makefile issues.
Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
2007-01-26 16:46:00 +00:00
kaf24@localhost.localdomain d8a689313b Remove the test functions from HVM highmem 32-bit BIOS.
Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
2007-01-26 16:39:38 +00:00
kaf24@localhost.localdomain 2d52e184e5 [HVM] Add TCG BIOS extensions to the high memory area along with
some often-used libc utility functions. The TCG extensions are
described here:

https://www.trustedcomputinggroup.org/specs/PCClient/TCG_PCClientImplementationforBIOS_1-20_1-00.pdf

I have tried to keep the patching with rombios.c to a minimum, but
some amount of code needs to be inserted at various locations.

The code is currently deactivated, but can be activated by setting
BX_TCGBIOS to '1'.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
2007-01-26 16:38:32 +00:00
kaf24@localhost.localdomain dd59dfdfb1 This patch adds a 32bit gateway to the Bochs BIOS. The 32 bit code is
compiled with gcc and linked into the hvmloader as a byte-array.
Hvmloader allocates memory (rounded up to next 64kb) from the e820
table
below 4GB, copies and relocates the 32bit code in the allocated area
and
copies a jumptable (located in a section '.biosjumptable') pointing to
the 'exported' functions into the Bochs BIOS's memory area to link the
two code sections. The memory area has been reserved and can be
identified with the signature '___JMPT'.

In the Bochs BIOS only stub functions are provided. These load the
index
of a particular function in the jump table, switch to protected mode
and
call the function in the high memory area.  The stack is prepared such
that functions compiled by gcc can just pick the parameters from the
stack as usual - this means that the 16bit real-mode return address is
taken off the stack. The stub functions should have the same signature
as those in 32bit space. For ABI compatibility reasons parameters
inside
the Bochs BIOS stubs should all be 32bit wide.

This patch includes a test function that calls three gcc-compiled
functions in the high memory area and displays their success status.
Simple tests are done doing multiplication and addition of 32-bit
numbers and reading and modification of a static variable. These
functions test the interface and the relocation code. The test code is
removed in patch part 3.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
2007-01-26 16:30:48 +00:00
Alastair Tse 247a0089e5 [XEND] Hook in utilisation statistics into Xen API calls.
Change PIF to be indexed by device name rather than the interface
number.

Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-26 15:45:51 +00:00
Alastair Tse 68da406e51 [XEND] Floats for not need to be stringified in Xen API.
Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-26 15:44:41 +00:00
Alastair Tse f3ada9be62 [XENAPI] Add an example to start HVM guests via the Xen API.
Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-26 15:42:21 +00:00
Alastair Tse de2d2231bf [XENAPI] Make server uri easily configurable via ENV or CLI opts.
Add a vm-stat command that just polls a vm for instantaneous statistics.

Signed-off-by: Alastair Tse <atse@xensource.com>
2007-01-26 15:41:16 +00:00
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