Commit Graph
149 Commits
Author SHA1 Message Date
Keir Fraser 7e4196ee73 libxc: Use vpath rather than VPATH, to avoid linking with hypervisor .o files.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2008-06-09 13:25:35 +01:00
Keir Fraser 8543c562dd stubdom: complete libxc support
Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
2008-05-23 09:35:23 +01:00
Keir Fraser 2950bd57c1 Provide Px statistic data to user through libxc
Sampling and collecting dynamic Px statistic data, including
Px state value, Px count, Px residency time, Px transition
matrix, etc. Provide Px statistic data to user through libxc.

Signed-off-by: Liu Jinsong <jinsong.liu@intel.com>
2008-05-16 09:37:19 +01:00
Keir Fraser 1aa3c54a31 Remove defunct powerpc port.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2008-05-08 13:40:40 +01:00
Keir Fraser 5f14a87ceb x86, hvm: Guest CPUID configuration.
CPUID's replies are now pre-calculated in libxc and given to the
hypervisor via a new domctl.

There are two parts to this feature:
   - We can overwrite cpuid's replies.
   - We can check that a vm is compatible with a host's processor.

Signed-off-by: Jean Guyader <jean.guyader@eu.citrix.com>
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2008-04-25 13:44:45 +01:00
Keir Fraser f3bf1dc168 x86: Support loading Linux bzImage v2.08 and up.
The latest -mm kernel (2.6.25-rc3-mm1) contains v2.08 of the Linux
bzImage format which embeds an ELF file in place of the raw payload
allowing it to be extracted and used by the Xen domain builder.

It is expected that this functionality will be put forward for 2.6.26.

Signed-off-by : Ian Campbell <ijc@hellion.org.uk>
2008-04-01 10:09:33 +01:00
Keir Fraser 6e30359431 Make stubdom/Makefile override XEN_OS to MiniOS, and add
config/MiniOS.mk. Add PTHREAD_LIBS to configs (usually holding
-lpthread).

Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
2008-02-12 15:03:07 +00:00
Keir Fraser 0243b256d6 Add stubdomain support. See stubdom/README for usage details.
- Move PAGE_SIZE and STACK_SIZE into __PAGE_SIZE and __STACK_SIZE in
  arch_limits.h so as to permit getting them from there without
  pulling all the internal Mini-OS defines.
- Setup a xen-elf cross-compilation environment in stubdom/cross-root
- Add a POSIX layer on top of Mini-OS by linking against the newlib C
  library and lwIP, and implementing the Unixish part in mini-os/lib/sys.c
- Cross-compile zlib and libpci too.
- Add an xs.h-compatible layer on top of Mini-OS' xenbus.
- Cross-compile libxc with an additional xc_minios.c and a few things
  disabled.
- Cross-compile ioemu with an additional block-vbd, but without sound,
  tpm and other details.  A few hacks are needed:
  - Align ide and scsi buffers at least on sector size to permit
  direct transmission to the block backend. While we are at it, just
  page-align it to possibly save a segment. Also, limit the scsi
  buffer size because of limitations of the block paravirtualization
  protocol.
  - Allocate big tables dynamically rather that letting them go to
  bss: when Mini-OS gets installed in memory, bss is not lazily
  allocated, and doing so during Mini-OS is unnecessarily trick while
  we can simply use malloc.
- Had to change the Mini-OS compilation somehow, so as to export
  Mini-OS compilation flags to the Makefiles of libxc and ioemu.

Signed-off-by: Samuel Thibault <samuel.thibault@eu.citrix.com>
2008-02-12 14:35:39 +00:00
Keir Fraser aa0833890b libxc: Push parallel build of libraries down to a new phony target, as
'build' is already loaded with library dependencies on ia64.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2008-01-27 17:03:35 +00:00
Keir Fraser 9f602ddea9 libxc: Remove duplicate zlib check.
It is already checked in tools/check/check_zlib.

Signed-off-by: Bastian Blank <waldi@debian.org>
2008-01-27 12:53:56 +00:00
Keir Fraser be5fbf9a7f Move generation of public header hierarchy into the tools.
This patch merges the two versions of public header generation
currently used in the build into one.

Signed-off-by: Bastian Blank <waldi@debian.org>
2008-01-26 10:38:44 +00:00
Keir Fraser 111eac9793 Use VPATH instead of symlinks for libelf inclusion into libxenctrl.
Signed-off-by: Bastian Blank <waldi@debian.org>
2008-01-26 10:15:38 +00:00
Keir Fraser 2faf0fc95c Add INCLUDEDIR. Use it.
Signed-off-by: Bastian Blank <waldi@debian.org>
2008-01-22 14:30:21 +00:00
Keir Fraser c8107e1564 Apply PREFIX directly to LIBDIR.
Signed-off-by: Bastian Blank <waldi@debian.org>
2008-01-22 14:29:11 +00:00
Keir Fraser 891143e321 tools: Some fixes for 'make clean'.
Signed-off-by: Kurt Hackel <kurt.hackel@oracle.com>
2007-12-14 10:16:52 +00:00
Keir Fraser af3ade42b9 Revert 16560:822d4ec5cfb1.
Preference seems to be to update library versions only when the ABI
changes. Only libxenctrl/libxenguest have their version number changed
to 3.2.0, as a reminder that they change on pretty much every major
release.

libfsimage/libxenstore/libblktap have not changed substantially
recently, hence the ABI has not changed, and version number stays the
same as in Xen 3.1 (and before).

Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2007-12-08 17:32:01 +00:00
Keir Fraser 7f9e1cf31e tools: Rationalise library soname versions.
* Arrange for the sonames of libxenstore, libxc, libfsimage and
   libblktap to be set from a single place in Config.mk.
 * Bumps the soname major version number to 3.2 in preparation for
   3.2 rc1 after which we do not expect to have ABI changes.

I have not done anything about libaio and libflask.  The former is
imported from elsewhere and if we're lucky will have sane versioning
upstream.

libflask has a very small interface and I'm hoping that the XSM
authors have been keeping some ABI discipline.

Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
2007-12-07 14:44:13 +00:00
Keir Fraser 32ba0b79ea libxc: Interface has changed a bit since Xen 3.1, so bump the major
number.
Signed-off-by: Keir Fraser <keir.fraser@citrix.com>
2007-12-06 15:36:07 +00:00
Keir Fraser cefbbff3f5 tools: Remove bogus external uses of xc_private.h. Clean up libflask.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-10-18 15:12:03 +01:00
Keir Fraser 3a0667d17e libxc: NetBSD-specific pieces.
Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
2007-09-24 13:45:57 +01:00
Keir Fraser 43aa5ed8c0 Specify -fno-strict-aliasing in root build config file.
Fixes correctness issues with xenstored and gcc-4.2.

Original patch by Charles Coffing <ccoffing@novell.com>

Signed-off-by: Keir Fraser <keir@xensource.com>
2007-07-07 10:31:15 +01:00
Tim Deegan d11bec8a19 [HVM] Save/restore: merge xc_linux_save and xc_hvm_save
into xc_domain_save, like we did for xc_domain_restore
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>

--HG--
rename : tools/libxc/xc_linux_save.c => tools/libxc/xc_domain_save.c
2007-04-11 14:45:14 +01:00
Tim Deegan 538a65bcc3 [HVM] Save/restore: merge xc_linux_restore and xc_hvm_restore
into one function (and one file) since they share a lot of code
Signed-off-by: Tim Deegan <Tim.Deegan@øensource.com>

--HG--
rename : tools/libxc/xc_linux_restore.c => tools/libxc/xc_domain_restore.c
2007-04-05 15:11:22 +01:00
Hollis Blanchard 001e8c5cd8 Merge with xen-unstable.hg.
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
2007-03-21 18:08:31 -05:00
Hollis Blanchard a7706a8de0 [LIBXC][POWERPC] Use new domain builder.
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
2007-03-21 17:03:00 -05:00
Hollis Blanchard 06aaae8408 [LIBXC] Move domain builder hooks into arch-specific files and remove ifdefs.
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
2007-03-21 17:02:59 -05:00
Hollis Blanchard b09b06b6de [POWERPC][XEN] Fix "xc_core" build break. Untested but might work.
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
2007-03-21 17:02:59 -05:00
Tim Deegan da12f80b3e [HVM][QEMU] Save/restore: enable HVM live migration
by getting page-dirtying bitmaps from qemu-dm as well as from xen.
Signed-off-by: Tim Deegan <Tim.Deegan@xensource.com>
2007-03-16 11:39:50 +00:00
Keir Fraser e0b421d242 Reduce impact of saving/restoring/dumping large domains on Dom0 memory
usage by means of fadvise64() to tell the OS to discard the cache
pages used for the save/dump file.

Signed-off-by: Simon Graham <Simon.Graham@stratus.com>
2007-02-24 14:48:17 +00:00
Keir Fraser e3ce7ff90f Xen coredump format: ELF formatified with note section.
added PFN-GMFN table for non-auto translated physmap
added PFN table for auto translated physmap.
HVM domain support.
IA64 support

Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>

Use the guest's own p2m table instead of xc_get_pfn_list(), which
cannot handle PFNs with no MFN.
Dump a zeroed page for PFNs with no MFN.
Clearly deprecate xc_get_pfn_list().
Do not include a P2M table with HVM domains.
Refuse to dump HVM until we can map its pages with PFNs.

Signed-off-by: John Levon <john.levon@sun.com>
2007-02-24 14:31:42 +00:00
kfraser@localhost.localdomain af9049b580 Remove old elf-parsing code from tools and from Xen.
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-02-15 10:25:39 +00:00
Hollis Blanchard 9fb65916be [POWERPC][XEN] Opt out of new libxc domain builder.
PowerPC needs more flexibility than the new framework allows.
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
2007-02-09 14:43:21 -06: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 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
kfraser@localhost.localdomain 4b3b0d5ce5 [LIBXC] Refactor xc_domain_resume() into its own source file.
The idea is that this file is where we will have two implementations
of 'suspend cancellation': one which the guest is aware of (and is
faster) and the other which does more work to avoid requiring guest
modifications.

Signed-off-by: Keir Fraser <keir@xensource.com>
2007-01-19 18:32:28 +00:00
Tim Deegan 4a13cf1b70 [HVM] save restore: frame work
Signed-off-by: Zhai Edwin <edwin.zhai@intel.com>

frame work for HVM save restore in Control Panel
2007-01-18 16:48:03 +00:00
kfraser@localhost.localdomain 9eafa32f48 [LIBXC] Make strerror() thread-safe by protecting it with a mutex.
Using strerror_r() is made difficult by the different GNU definition,
and different distros variously choose the POSIX or GNU prototype.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-12-08 15:59:30 +00:00
kfraser@localhost.localdomain 429764f760 [LIBXC] Add -Wmissing-prototypes to CFLAGS, fix warnings resulting from that.
Signed-off-by: Gerd Hoffmann <kraxel@suse.de>
2006-10-25 15:25:13 +01:00
kfraser@localhost.localdomain 7b7b7c2fef Fix multiple inclusion when building libxenguest.
Signed-off-by: John Levon <john.levon@sun.com>
2006-10-17 18:35:13 +01:00
kfraser@localhost.localdomain b9488ab5f5 [SOLARIS] Create kernel-interface implementations for libxc and xenstored.
Additionally, on Solaris, tell the kernel when xenstored is running.

Signed-off-by: John Levon <john.levon@sun.com>
2006-10-17 18:21:25 +01:00
kfraser@localhost.localdomain c0fd920e98 [SOLARIS] Don't build ptrace code on Solaris.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-10-17 17:59:32 +01:00
kfraser@localhost.localdomain d61113c5c7 [SOLARIS] On Solaris, GCC is configured to use Sun's LD. Fix the build to use
the correct flags, and link against libsocket where necessary.

Signed-off-by: John Levon <john.levon@sun.com>
2006-10-17 17:17:57 +01:00
kfraser@localhost.localdomain 6311dc03da Clean up duplication of 'install' macros in the Makefiles.
Signed-off-by: John Levon <john.levon@sun.com>
2006-10-17 15:57:05 +01:00
kfraser@localhost.localdomain db51cd09d3 Remove all traces of the obsolete BVT scheduler.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-08-23 17:14:38 +01:00
kfraser@localhost.localdomain 1e664a670c [LIBXC] clean specified files instead of wildcarding
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
2006-08-10 10:55:54 +01:00
Hollis Blanchard b25d8fde56 [LIBXC] remove relocated file from Makefile
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
2006-08-08 18:37:46 -05:00
kfraser@localhost.localdomain a11943ada5 [LIBXC] Generic include of arch-specific sub-makefile.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-07-28 14:00:57 +01:00
awilliam@xenbuild.aw 767a6a1679 [IA64] fix merge error with xen-unstable.hg
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
2006-07-25 12:39:01 -06:00
awilliam@xenbuild.aw 31423d8a91 merge with xen-unstable.hg 2006-07-25 12:19:05 -06:00