Commit Graph
9528 Commits
Author SHA1 Message Date
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
kaf24@firebug.cl.cam.ac.uk 6601a234d1 See panic messages before the post message processing.
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
2006-03-31 10:24:17 +01:00
kaf24@firebug.cl.cam.ac.uk 3d95d58003 Enable the setting and trapping of breakpoints for hvm guest.
Catch Ctrl-C for gdbserver and let gdb break from continue command.

Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com>
2006-03-31 10:07:55 +01:00
kaf24@firebug.cl.cam.ac.uk f651bf191b The ia64 build doesn't yet include drivers/xen/Kconfig directly so we
need to replicate the new XEN_INTERFACE_VERSION option in the arch
Kconfig.

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
2006-03-31 10:06:20 +01:00
emellor@leeni.uk.xensource.com 62b8bcaf48 Merged. 2006-03-31 00:26:07 +01:00
emellor@leeni.uk.xensource.com f207095aac Remove the transaction parameter from xenbus_switch_state and move the state
switch out of a transaction, in the few cases where it is inside one.

In order to behave properly, it is necessary for a driver to know its own
xenbus state (see changeset 9469:b3cb19d2b07f, for example).  This
value is stored as xenbus_device.state and updated by xenbus_switch_state.

If xenbus_switch_state occurs within a transaction, then there is a possibility
that the transaction would be aborted, leaving the state field dangerously out
of sync with the value currently in the store.

This fixes recent problems seen whereby bringing multiple devices up at the
same time results in some devices not coming up (often all of the even-numbered
ones, because of the pattern of transaction conflict).

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-03-31 00:24:54 +01:00
emellor@leeni.uk.xensource.com 0464aecf6c Better formatting of error messages for xmlrpclib.Faults, matching similar code
in main.py.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-03-31 00:15:12 +01:00
emellor@leeni.uk.xensource.com 6b914525af Print error messages to stderr. Remove unused handle_xend_error.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-03-31 00:14:09 +01:00
emellor@leeni.uk.xensource.com 8d3271b7cc Set the permissions correctly on the XML-RPC UDP socket, so that non-root users
cannot use the socket.

This closes a security hole, and fixes the intermittent failure
of xm-test/06_list_nonroot.test.

c.f. xen-unstable changeset 9205:faa1eb1621b9 (same bug, different socket).

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-03-31 00:13:33 +01:00
emellor@leeni.uk.xensource.com 7a6ee342c3 Further attempts to recover from a corrupt store, this one triggered when a
tdb_store fails.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-03-31 00:10:54 +01:00
emellor@leeni.uk.xensource.com 26c829aa89 Don't use abbreviated ip subcommands -- these are not accepted by iproute2.
Closes bug #478.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-03-31 00:09:42 +01:00
cl349@firebug.cl.cam.ac.uk 13678d4465 Remove __HYPERVISOR_sched_op_new in favour of a header file interface version number system.
Define interface version in Kconfig and define it through CPPFLAGS for
C and assembly file compilation.
Add HYPERVISOR_{yield,block,shutdown} to remove direct use of sched_op
from guest code.

Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-03-30 17:50:44 +01:00
cl349@firebug.cl.cam.ac.uk 811ca618e3 Change how we add the include asm override to CPPFLAGS.
Add to CPPFLAGS instead of entirely redefining it.

Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2006-03-30 17:50:40 +01:00
emellor@leeni.uk.xensource.com a638cd3e89 Merged. 2006-03-30 17:26:19 +01:00
emellor@leeni.uk.xensource.com 78b637ac77 Added medium-length (around 20 minute run-time) test group.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
2006-03-30 17:25:03 +01:00
kaf24@firebug.cl.cam.ac.uk 20603fcf9a The attached trivial patch fixes cases where a block device is mounted
read-only in domain 0, but still fails to be shared with a domU, because
it is mis-identified as being mounted writable.  (On SUSE, CDs and DVDs
are auto-mounted not with merely permissions "ro", but
"ro,nosuid,nodev", hence the mis-identification.)

Signed-off-by: Charles Coffing <ccoffing@novell.com>
2006-03-30 16:53:37 +01:00
smh22@firebug.cl.cam.ac.uk e0d7fab70f Fix comment.
Signed-off-by: Steven Hand <steven@xensource.com>
2006-03-30 15:28:53 +01:00
kaf24@firebug.cl.cam.ac.uk ce0dc718f2 More fixes to gdbserver for HVM guest debugging. Also fix
writing back of register state for HVM guests.

From: Nitin A Kamble <nitin.a.kamble@intel.com>

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-03-30 14:37:22 +01:00
kaf24@firebug.cl.cam.ac.uk 4734f49106 Use AFLAGS for assembly files so we can "+=" more flags.
From: Jimi Xenidis <jimix@watson.ibm.com>

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-03-30 14:31:57 +01:00
kaf24@firebug.cl.cam.ac.uk 31903a3370 Include the E7520 (e.g., Dell 1850) irqbalance quirk fix even when
building a non-SMP kernel. The underlying hypervisor may still be SMP.

Signed-off-by: Keir Fraser <keir@xensource.com>
2006-03-30 14:06:11 +01:00
emellor@leeni.uk.xensource.com ecaa88857f Merged. 2006-03-30 11:55:07 +01:00