Commit Graph
13645 Commits
Author SHA1 Message Date
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 8bcd69bb9b Fix 32-bit build. 2007-01-26 15:08:28 +00:00
kaf24@localhost.localdomain 1eef848686 Update hgignore list 2007-01-26 14:11:34 +00:00
kaf24@localhost.localdomain 9e73f98968 minios : netfront driver fixes.
- Handle returned backend==NULL || mac==NULL, this leads sometimes to a crash.
- Remove unnecessary (and bogus) initialisation of np->rx.req_prod_pvt

Signed-off-by: Dietmar Hahn <dietmar.hahn@fujitsu-siemens.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
2007-01-26 13:51:00 +00:00
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