Commit Graph
13635 Commits
Author SHA1 Message Date
kaf24@localhost.localdomain f4e65191df xen: Remove unused elf32.c.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-01-26 13:46:29 +00:00
kaf24@localhost.localdomain 73b351f7b2 32-on-64: Fix an one-off error in compat_addr_ok().
Signed-off-by: Jan Beulich <jbeulich@novell.com>
2007-01-26 13:36:52 +00:00
kaf24@localhost.localdomain 0900d4a0e1 Cleanups for unmodified (pv-on-hvm) driver building.
- some cleanup to mkbuildtree
- adjustment to the fake __supported_pte_mask definition (removing the
  export for x86-64 in native Linux is being discussed, so this shouldn't be
  i386 specific)
- remove odd/unused defines (mostly CONFIG_*) in overrides.mk

Signed-off-by: Jan Beulich <jbeulich@novell.com>
2007-01-26 13:34:02 +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
kaf24@localhost.localdomain 0993003c80 32-on-64: Fix register-argument rearrangement to avoid clobbering the
fifth hypercall argument.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-01-26 10:10:12 +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 460060f83d libelf: use for x86 dom0 builder.
This patch switches the x86 dom0 builder over to libelf.

Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
---
 xen/arch/ia64/xen/domain.c  |   79 +++++------
 xen/arch/x86/domain_build.c |  303 +++++++++++++++-----------------------------
 xen/common/Makefile         |    4
 3 files changed, 148 insertions(+), 238 deletions(-)
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
kfraser@localhost.localdomain e0f3895c51 Fix perfc=y build.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-01-25 18:23:48 +00:00
kfraser@localhost.localdomain 364a836fe6 hvm: Define a global I/O access bitmap, allowing direct access to port 0x80.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-01-25 18:20:58 +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
kfraser@localhost.localdomain a802ad78c3 netfront: Better fix for netfront_tx_slot_available().
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-01-25 16:58:21 +00:00
kfraser@localhost.localdomain 117fb90db0 emulator: Emulate IN/OUT/INS/OUTS. Fix CLTS.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-01-25 16:32:19 +00:00
kfraser@localhost.localdomain 611226efeb emulator: Start filling in gaps for privileged instructions.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-01-25 15:25:06 +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 4b4cd53657 32-on-64: Small fixes.
Signed-off-by: Jan Beulich <jbeulich@novell.com>
2007-01-25 13:05:15 +00:00
kfraser@localhost.localdomain ae015f0d1e emulator: Add new hook functions for load/store privileged state.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-01-25 13:02:03 +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
kfraser@localhost.localdomain 89fdf2860a [HVM] Wake up APs immediately during restore.
From: Edwin Zhai <edwin.zhai@intel.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-01-25 12:28:47 +00:00
kfraser@localhost.localdomain 8658df107c netfront: Check availability of grant references in start_xmit().
Signed-off-by: Tomonari Horikoshi <t.horikoshi@jp.fujitsu.com>
2007-01-25 12:24:43 +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 eca8b2ee32 [HVM][SVM] Add save/restore support.
From: Mats Petersson <Mats.Petersson@amd.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-01-24 18:30:07 +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
kfraser@localhost.localdomain e21e6635b2 32-on-64: All argument registers must be zero extended to 64 bits
(%rdx was missed).
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-01-24 18:20:24 +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