Commit Graph
9548 Commits
Author SHA1 Message Date
emellor@leeni.uk.xensource.com d5ed151f12 Fix test to match change to DCE formatting of UUIDs.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-04-06 14:21:45 +01:00
emellor@leeni.uk.xensource.com f743566e86 Merged. 2006-04-06 00:59:18 +01:00
emellor@leeni.uk.xensource.com d220279c33 Further workarounds for the broken string marshalling in xmlrpclib. Regardless
of the encoding used, one still may not include non-printable characters in an
XML document.  When a dmesg contains a ^D character, something seen on one of
our test machines, an invalid XML document is generated.

Use a trick by David Mertz to work around this -- escape the string using
Python's repr function.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-04-06 00:59:06 +01:00
kaf24@firebug.cl.cam.ac.uk 6f1d9ff919 Backtrack on the new interface for reserved event-channel
ports, as binding them in user space via the evtchn driver
would be a pain. Instead extend VIRQs so they can be
classified as 'global' or 'per vcpu'. The former can only
be allocated once per guest, but can be re-bound to
an arbitrary VCPU.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-04-05 19:30:02 +01:00
kaf24@firebug.cl.cam.ac.uk b0a4d66a6c Add new interface for allocating reserved event-channel
ports to arbitrary Xen subsystems.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-04-05 17:41:51 +01:00
kaf24@firebug.cl.cam.ac.uk a853f9f18f Clean up build system some more. No need to explicitly
include Rules.mk/Post.mk all over the place.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-04-05 17:15:34 +01:00
kaf24@firebug.cl.cam.ac.uk 2e70fcfed5 Clean up HDRS Makefile variable.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-04-05 15:46:01 +01:00
kaf24@firebug.cl.cam.ac.uk c5093e0719 Add support for XCHG instruction accessing LAPIC device model.
Signed-off-by: Boris Ostrovsky <bostrovsky@virtualiron.com>
2006-04-05 15:42:01 +01:00
kaf24@firebug.cl.cam.ac.uk af73380a31 Rename update_dom_time() to update_vcpu_system_time().
Introduce new generic function update_domain_wallclock_time().

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-04-05 15:00:42 +01:00
kaf24@firebug.cl.cam.ac.uk d808cafa39 Extend the 'badpage' boot option to parse inclusive
ranges of bad panges '<start_page>-<end_page>'.

Signed-off-by: Erik Bosman <ebosman@gmail.com>
2006-04-05 13:38:54 +01:00
kaf24@firebug.cl.cam.ac.uk ec74700a6b Fix a regression in hvm_pio_assist() when booting Windows
on VT-x. Clean up the function also.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-04-05 12:23:49 +01:00
kaf24@firebug.cl.cam.ac.uk beac48024f gdbserver readme update.
Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com>
2006-04-05 10:54:29 +01:00
kaf24@firebug.cl.cam.ac.uk ad9f21014f There are a couple of bugs with the current handling of reads and writes
in the configuration space overlay functions. The wrong offset is passed
to the virtual field handlers. This patch uses the variable which
contains the correct offset. This patch also fixes the logic which
generates the actual value to write to a given virtual configuration
space field.

Signed-off-by: Ryan Wilson <hap9@epoch.ncsc.mil>
2006-04-05 10:52:10 +01:00
kaf24@firebug.cl.cam.ac.uk e95a4836bc Define Xen interface version for tools build.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-04-05 10:41:11 +01:00
kaf24@firebug.cl.cam.ac.uk 1b7e15f112 Fix checksum-offload problems introduced in c/s 9514, due to
data_validated flag not being properly specified on the
device channel.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-04-05 10:37:37 +01:00
kaf24@firebug.cl.cam.ac.uk 28efb2481f We had reports of reboot not working on certain machines (specifically
Compaq/HP notebooks), where Linux already has code to deal with
that. Apparently that code was either deleted during the original port
or got added to Linux after the original port was done. Anyway, this
patch adds the respective Linux code (slightly adjusted) to deal with
the same systems in Xen.

From: Jan Beulich

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-04-04 15:20:12 +01:00
kaf24@firebug.cl.cam.ac.uk c82d714c9c With the standard (XEN) prefix and the setting of 8 words per line,
stack dumps on i386 came out at 81 characters per line. The change to
xen/arch/x86/traps.c makes this 80 (without changing the look on the
screen), and the change to xen/drivers/char/console.c arranges for
soft line breaks not getting duplicated by hard line breaks, so
displaying 80 characters per line doesn't result in a subsequent blank
line.

From: Jan Beulich

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-04-04 15:06:38 +01:00
kaf24@firebug.cl.cam.ac.uk b9d11c5788 HVM patch to add pio IOREQ_WRITE OVERLAP/REPZ support in hvm io.c
hvm_pio_assist().  Also, cleaned up a bit of duplicate code in the
functions.  Simple guest tests (ide pio) pass now for overlapped/rep
write operations.

Signed-off-by: Tom Woller <thomas.woller@amd.com>
Signed-off-by: Mats Petersson <mats.petersson@amd.com>
2006-04-04 15:05:17 +01:00
kaf24@firebug.cl.cam.ac.uk c8a220e4f7 Simplify the Xen genapic code. Many genapic hooks have been
replaced with unconditional static 'sane' implementations.
Functions relating to interrupt/IPI delivery have been
grouped into two sets: physical delivery and logical-flat
delivery. All subarchitectures use physical delivery except
the basic default subarchitecture.

The main behavioural changes are:
 1. Summit no longer uses logical-clustered delivery mode
 2. Physical mode no longer makes any pretence to set the
    LDR sanely. We never deliver interrupts in logical mode
    so this really should not matter.
 3. Sanity checking of phys_cpu_present_map is enabled
    for all subarchitectures. Really we should have a sane
    set of APIC IDs in the system, as we rely on them for
    physical delivery mode.
 4. We enable 'bigsmp' mode on any system with more than
    eight CPUs. The previous xAPIC check was unnecessary,
    since our bigsmp mode uses physical delivery, not
    logical-clustered.

This all obviously needs testing on some big systems.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-04-04 15:00:41 +01:00
sos22@douglas.cl.cam.ac.uk 295b4af4a1 fix mfn check of gnttab_transfer().
Signed-off-by: Steven Smith, sos22@cam.ac.uk
From: Isaku Yamahata <yamahata@valinux.co.jp>
2006-04-04 14:04:32 +01:00
emellor@leeni.uk.xensource.com c0693d2c6e Workaround bug in xmlrpclib's string escaping. That library outputs invalid
UTF-8 if given a string containing high-bit characters, so instead pass in
Unicode strings, for which the escaping is correct.

This fixes a bug seen when the dmesg of a machine contains high bit characters,
but I'm sure there are other ways in which it might be triggered.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-04-04 11:08:20 +01:00
kaf24@firebug.cl.cam.ac.uk af37573f2c Build a few more common network options into the i386 -xen kernel.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-04-04 09:53:53 +01:00
emellor@leeni.uk.xensource.com cb52e35a60 Merged. 2006-04-03 23:58:40 +01:00
emellor@leeni.uk.xensource.com 2df295f268 Lookup backend by name _or_id_. This is important for domain 0, for example!
Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-04-03 23:57:42 +01:00
emellor@leeni.uk.xensource.com d0263f0fa4 Fix cpus string parsing, wrt use of ^ to remove elements.
Patch from Satoshi Uchida <s-uchida@ap.jp.nec.com>.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-04-03 18:39:21 +01:00
emellor@leeni.uk.xensource.com 15b8695184 The attached patch fixes a race condition that occurs if after the
backend has been removed there are still requests pending. This patch
flushed all the pending requests.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
2006-04-03 18:32:43 +01:00
mip@xencore04.1virtual.net ea0ce2d439 Improve pygrub error reporting when opening ext2 fs is not possible
As reported in the thread:
http://lists.xensource.com/archives/html/xen-users/2006-03/msg00721.html,
pygrub does not open ext2 file systems in partitioned images or sub
partitions on e.g. CentOS/RHEL 4, because e2fsprogs ext2fs_open does not
support an offset into the file to be opened.

With this patch, the error is correctly reported instead of a generic
"unable to open file" (and leaving the user searching in the dark).

Signed-off-by: Michael Paesold <mpaesold@gmx.at>
2006-04-03 18:28:54 +01:00
tkuik@tkuik-lnx2.cisco.com d2a5e52e8c Allow a domain other than Domain-0 to be a backend.
Signed-off-by: Tim Kuik tkuik@cisco.com
2006-04-03 18:23:00 +01:00
kaf24@firebug.cl.cam.ac.uk 6daae768eb Remove some dead code from the consoled client.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2006-04-03 17:48:39 +01:00
kaf24@firebug.cl.cam.ac.uk 4b233c8749 Clean up subarch 'mach-foo' header files. No need for
subarch apicdef.h and ipi.h can be much simplified.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-04-03 17:47:42 +01:00
kaf24@firebug.cl.cam.ac.uk f55976facf Remove send_IPI_all, send_IPI_allbutself and send_IPI_self
shortcutting IPI functions. They're either unused or used so
frequently that we may as well simplify things and always use
send_IPI_mask.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-04-03 16:35:06 +01:00
kaf24@firebug.cl.cam.ac.uk 5e8883cc8c Added tag 3.0.2-branched for changeset d0d3fef37685be264a7f52201f8ef44c030daad3 2006-04-03 15:52:58 +01:00
Ian.Campbell@xensource.com d3cf31ddb2 Handle failure to register the xen store event channel instead of
just not initialising xenbus/store when the supervisor_mode_kernel
feature flag is enabled.

When initialising grant tables only -ENOSYS is a valid reason
to fail so BUG_ON anything else like we did prior to changeset
9498.

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
3.0.2-branched
2006-04-03 14:34:20 +01:00
kaf24@firebug.cl.cam.ac.uk 0c48c2080d Make checksum handling in the virtual network drivers more robust.
Largely this involves making the logic symmetrical: for example,
not only should netfront be able to tell netback that a packet has
an empty protocol checksum field, but the reverse must also be true.

Another change is that the drivers only advertise IP checksum
offload functionality. There is currently no information
propagated across the device channel about the offset of the
protocol-specific checksum field. Therefore it is not safe to
defer checksum calculation for protocols the remote end may not
understand -- it will end up dropping having to drop the packet.

Yet another change is to allow netback to disable tx checksum
offload, just as we already could for netfront. Currently there is
no support for disabling rx checksum offload -- that would seem
to require some way of propagating the checksum-offload advertisement
(or lack of it) across the device channel, as it really ought to be
the transmitter that acts on it.

Thanks to Ian Jackson for pointing out some of the problems with
our checksum-offload handling. Several of the changes here are
due to his comments.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-04-02 16:16:53 +01:00
kaf24@firebug.cl.cam.ac.uk 10daa80b93 Enable HYPERVISOR_sched_op() and HYPERVISOR_sched_opt_compat() for ia64.
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
2006-04-02 09:49:17 +01:00
kaf24@firebug.cl.cam.ac.uk 8adde1d0c5 Define __XEN_INTERFACE_VERSION__ when building Xen.
Signed-off-by: Keir Fraser <keir@xensource.com>
2006-04-02 09:48:04 +01:00
kaf24@firebug.cl.cam.ac.uk 9cf21925de This patch fixes several issues related to vmxassist:
1) AP bring up;
2) RHEL4 IA32e installation;
3) SLES10 IA32e installation;

Signed-off-by: Xin Li <xin.b.li@intel.com>
2006-04-01 14:59:12 +01:00
kaf24@firebug.cl.cam.ac.uk 97c44fa2f3 Rename sched_op->sched_op_compat and sched_op_new->sched_op
after Christian's interface cleanup.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-04-01 11:08:50 +01:00
kaf24@firebug.cl.cam.ac.uk d057bf8506 When dom0 fails to balloon enough memory to allow a new domain to start,
an exception is thrown.  The test that decides which exception to throw
is backwards, resulting in strange error messages.  The attached patch
fixes the problem.

Signed-off-by:  Charles Coffing <ccoffing@novell.com>
2006-04-01 10:52:47 +01:00
kaf24@firebug.cl.cam.ac.uk 840ac8df5a Changed deprecated "set-vcpus" to "vcpu-set" in the xm man page.
Signed-off-by:  Charles Coffing <ccoffing@novell.com>
2006-04-01 10:50:58 +01:00
kaf24@firebug.cl.cam.ac.uk 85c024b331 Fix makefiles for hvmloader and vmxassist for FC5 on x86_64
systems.

In FC5, gcc has issues with the command lines used to build
hvmloader and vmxassist.  Basically, the compiler doesn't
like the combination of -m64 and -m32.  As these are 32 bit
apps, and intended to be, take a modified approach and simply
define XEN_TARGET_ARCH for 32 bits.  This cleans up the
command line and builds the images correctly.

From: Ben Thomas <ben@virtualiron.com>

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-04-01 10:49:42 +01:00
kaf24@firebug.cl.cam.ac.uk 75a5d014e3 [SVM] Do not update seg.base in realmode while obtaining the io
addr for ins/outs.

Signed-off-by: Tom Woller <thomas.woller@amd.com>
2006-04-01 10:40:54 +01:00
kaf24@firebug.cl.cam.ac.uk 76d1c06d09 Minor minios traps.c fix for x86/64.
Signed-off-by: Aravindh Puthiyaparambil
<aravindh.puthiyaparambil@unisys.com>
2006-04-01 10:39:31 +01:00
kaf24@firebug.cl.cam.ac.uk 17e838d026 [IA64] Include features header in xenbus_probe and build features.c
Signed-off-by: Alex Williamson <alex.williamson@hp.com>
2006-04-01 10:37:36 +01:00
kaf24@firebug.cl.cam.ac.uk 5a3908ddfd Add new boot parameter 'lowmem_emergency_pool' which creates
an emergency pool of pages below 4GB (i.e., in Xen's DMA pool)
which will ever be used to satisfy normal allocation requests.

This is particularly useful in an i386 PAE environment to ensure
that pages will always be available for allocation as
page-table base directories.

Usage, for example (to reserve 16MB):
 lowmem_emergency_pool=16M

In a PAE environment, each reserved megabyte guarantees you should
be able to create up to 256 processes (counted across all guests).
16MB means you're good for 4096 processes.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-04-01 10:20:10 +01:00
cl349@firebug.cl.cam.ac.uk 05c8070bb4 Fix do_IRQ high bit masking.
Instead of setting the highest bit (which isn't easily done on native x86_64),
negate the interrupt vector stored in orig_{e,r}ax.
Also add patch for native build.

Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-03-31 17:44:26 +01:00
kaf24@firebug.cl.cam.ac.uk e5829dcbe1 Plumb network vif credit-based rate limiting thorugh xenbus
and xend into xm guest config files.

A new vif parameter 'rate' is supported, with an optional time window
paremeter for specifying granularity of credit replenishment. The default
window is 50ms. For example:

 'rate=10Mb/s'  'rate=250KB/s'  'rate=1MB/s@20ms'

From: Chris Clark <christopher.w.clark@gmail.com>

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-03-31 15:34:52 +01:00
kaf24@firebug.cl.cam.ac.uk f8253f9f48 Currently, xm & xend allow an XAUTHORITY to be specified in the config
file.  If that is not specified, then xm will pass the XAUTHORITY
environment variable back to xend instead.  This is not sufficient,
since it is possible that XAUTHORITY is not set at all.  This doesn't
cause a problem for most X apps, because xlib will use the fall-back of
$HOME/.Xauthority.  But the viewer is started from xend, which almost
certainly doesn't have a reasonable HOME variable.

We fix this by always passing some value for
XAUTHORITY.  In order of preference, that value is:
1.  Use the value from the config file, if specified.
2.  Use the value from the XAUTHORITY env variable, if set.
3.  Use $HOME/.Xauthority, if HOME is set.
4.  Look up the user's home directory via getpwuid, and append
"/.Xauthority"

Signed-off-by: Charles Coffing <ccoffing@novell.com>
2006-03-31 13:51:19 +01:00
kaf24@firebug.cl.cam.ac.uk 68b564efee Various softirq cleanups:
1. Make __softirq_pending a long, since PPC borrows the file
    hardirq.h from us and they only do atomic ops on longs.
 2. do_softirq() explicitly takes a void param list.
 3. Remove idle_timestamp field from irq_cpustat. It's unused
    and lets us simplify the idle loop a little bit.

Part 1 based on a patch from Hollis Blanchard at IBM.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-03-31 12:03:42 +01:00
Ian.Campbell@xensource.com 5a5d245c8c Disable xen bus and grant tables when supervisor_mode_kernel is enabled.
Neither of these features are useful/available in this mode since only a
single domain is supported.

Do not attempt to initialise xen bus when supervisor_mode_kernel is
enabled.

Do not BUG_ON() failure to setup grant tables, future versions
of supervisor_mode_kernel may return -ENOSYS here. 

Signed-off-by: Ian Campbell <ian.campbell@xensource.com>
2006-03-31 11:04:42 +01:00