Commit Graph
7895 Commits
Author SHA1 Message Date
smh22@firebug.cl.cam.ac.uk f2896ff4cd Only resume xenbus /after/ we've prepared our VCPUs; otherwise the
VCPU hotplug callback can race with our vcpu_prepare. 

Signed-off-by: Steven Hand <steven@xensource.com>
2005-11-18 19:56:03 +01:00
kaf24@firebug.cl.cam.ac.uk 949ebc61f8 Do not allow an uninitialised VCPU to be brought up. Also
check VCPUOP_up return code in the guest and BUG() on
failure.

Signed-off-by: Keir Fraser <keir@xensource.com>
2005-11-18 19:25:17 +01:00
kaf24@firebug.cl.cam.ac.uk 1f39a6dc5e The xentrace_format script doesn't work on x86/64. Python pads the input
structure because the first field is 32 bits and the next is 64 bits, 
whereas x86-32 doesn't pad. The quick fix is to read the cpu id 
separately as a 32bit value, then read the rest of the trace record. 
Here is a little patch that does that. Tested on x86/32 SMP and x86/64.


Signed-off-by: Rob Gardner <rob.gardner@hp.com>
2005-11-18 17:54:23 +01:00
kaf24@firebug.cl.cam.ac.uk 931a2bf97f make_page_readonly() must flush unused kmaps when handling
a high-memory page. Otherwise stale writable mappings may 
persist. This fixes a corner case for alloc_ldt (which can
vmalloc an LDT and hence use highmem pages).

Signed-off-by: Keir Fraser <keir@xensource.com>
2005-11-18 17:50:25 +01:00
kaf24@firebug.cl.cam.ac.uk cde43db53a Improve make_page_readonly and make_page_writable:
1. Use update_va_mapping where possible (much faster)
 2. If that fails, fall back to explicit pte update rather
    than using writable pagetables (very slow for singleton
    updates)

Also many x86/64 cleanups and fix to handle vmalloc space
correctly.

Signed-off-by: Keir Fraser <keir@xensource.com>
2005-11-18 17:42:45 +01:00
kaf24@firebug.cl.cam.ac.uk f2d946d367 Simplify arbitrary_virt_to_phys, and fix the x86/64 version to mask
out the NX bit.

Signed-off-by: Keir Fraser <keir@xensource.com>
2005-11-18 17:41:03 +01:00
emellor@leeni.uk.xensource.com 72af5fff3b Merged. 2005-11-18 16:32:04 +01:00
emellor@leeni.uk.xensource.com 3b7259968a Remove one further reference to network_limit_help that I missed when merging.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-11-18 16:31:50 +01:00
emellor@leeni.uk.xensource.com eaa3641b4f Merged. 2005-11-18 14:30:47 +01:00
emellor@leeni.uk.xensource.com 224611c6da Remove barbaric abuse of goto out of one nested block and into a previous one.
Remove one other -- less barbaric but still horrible -- use of goto.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-11-18 14:28:38 +01:00
emellor@leeni.uk.xensource.com 0c47abed1d Merged. 2005-11-18 14:05:38 +01:00
emellor@leeni.uk.xensource.com 7a9a19bd5a From Ken Grant: Add per command help / make help match new man pages.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-11-18 14:04:53 +01:00
kaf24@firebug.cl.cam.ac.uk e39174283d Disable live relocation for PAE and x86/64. Currently it can
seriously harm Xen's health. Better to just disable it in the
tools until the outstanding issues are resolved.

Signed-off-by: Keir Fraser <keir@xensource.com>
2005-11-18 13:51:20 +01:00
kaf24@firebug.cl.cam.ac.uk de70603843 Remove conditionally-compiled code for Linux 2.4.
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2005-11-18 13:46:18 +01:00
dan@guaranine.beaverton.ibm.com c4b4f208da Make test 15_create_smallmem pass mem=16M on the kernel command line. 2005-11-18 13:02:33 +01:00
dan@guaranine.beaverton.ibm.com 2f45e4aed1 Added a test to verify that devices come and go from block-list
as they are block-attach'd and block-detach'd.
2005-11-18 13:02:01 +01:00
sean@dague.net 1443ca6d8c updates to xmdomain.cfg.5 man page to document most used options, and
provide a basic template for examples
2005-11-18 13:01:30 +01:00
dan@localhost.localdomain e198273e0e Add hping to the ramdisk. Also, do some very simple versioning.
This is the first change to the ramdisk since v0.1.0.  So, we now build
the image as initrd-X.Y.img, and link initrd.img to it.  This lets us
have a few checks to make sure that people rebuild their ramdisks when
necessary.
2005-11-18 13:00:13 +01:00
sean@dague.net 600918671a trivial add to .hgignore to ignore all the pulled content for xm-test's buildroot 2005-11-18 12:58:38 +01:00
sean@dague.net 829e31bad5 added block device content, including finding a few more bugs in xen 2005-11-18 12:58:16 +01:00
kaf24@firebug.cl.cam.ac.uk a6f63cebf1 Set up fully-virtualised RTC time zone default to local
time (not UTC).

Signed-off-by: Winston Wang <winston.l.wang@intel.com>
2005-11-18 12:42:59 +01:00
emellor@leeni.uk.xensource.com d6840089fb Initialise the request ID in xs_talkv, to silence valgrind. We're not actually
using this value at the moment -- it's only there for use by future clients.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-11-17 20:25:47 +01:00
emellor@leeni.uk.xensource.com 3700b1715b Initialise the request ID in xs_talkv, to silence valgrind. We're not actually
using this value at the moment -- it's only there for use by future clients.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-11-17 20:20:44 +01:00
emellor@leeni.uk.xensource.com 2f7678e706 Simplify the logic of each of the functions here, removing the many bizarre
uses of goto that reduce down to return NULL in any case, breaking the common
code out for returning values based upon the success or failure of an
operation, and the common code that parses transaction and path parameters,
used by xspy_read, xspy_ls, and xspy_mkdir.  Break out also the common code
that removes a watch token from the XsHandle watches list.

Use bool rather than int for result values, where this matches the same use
by tools/xenstore/xs.c.

Added missing free in xspy_get_permissions.

Use PySequence_SetItem inside xs_watch, rather than Py_INCREF followed by
PyList_SetItem.  If there is no None entry in the watches list, the code goes
on to append to the list using PyList_Append, and that call takes its own
reference rather than stealing one like PyList_SetItem.  This means that we
were previously leaking a reference if the list was full and so PyList_Append
was necessary.

Use PySequence_SetItem rather than Py_INCREF/PyList_SetItem also where we are
using assigning Py_None into the list, for neatness.

Remove meaningless pipe from xspy_release_domain's arg_spec.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-11-17 20:17:50 +01:00
smh22@firebug.cl.cam.ac.uk b4c7ff25ae Fix race in blkfront resume path (watch thread could fire watch during the
(short-ish) time that we were in BLKIF_STATE_DISCONNECTED). 

Signed-off-by: Steven Hand <steven@xensource.com>
2005-11-17 14:56:50 +01:00
jrb44@plym.cl.cam.ac.uk d36cf651f3 Fix x86-64 build.
Signed-off-by: James Bulpin <james@xensource.com>
2005-11-17 13:32:05 +01:00
kaf24@firebug.cl.cam.ac.uk 1a3d4766a8 merge 2005-11-17 13:03:13 +01:00
kaf24@firebug.cl.cam.ac.uk d2a085d07c Fix event_pending() macro to match the assembly-language
checks in entry.S. This will avoid a hard-to-debug loop
that we found ourselves in recently, involving
hypercall_preempt_check() spuriously returning TRUE, but
no event getting propagated to the guest (since mask != 0).

Signed-off-by: Keir Fraser <keir@xensource.com>
2005-11-17 13:02:19 +01:00
emellor@leeni.uk.xensource.com 1055f8d4be Merged. 2005-11-17 12:59:58 +01:00
emellor@leeni.uk.xensource.com 3805ba3b8a Correct buffer->size at the same time as buffer->capacity when shrinking down a
buffer that has grown beyond max_capacity.  This fixes a Xenconsoled segfault
that was caused by stomping around above the buffer's allocated region.  It
became possible to set the max_capacity with changeset 7431, and ever
since then we have been exposed to this bug.  It would most easily be triggered
by running a domain without a client attached to the console, so that the
max_capacity was reached more easily.

Closes bug #380.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-11-17 12:59:12 +01:00
kaf24@firebug.cl.cam.ac.uk c65d635351 The perdomain mapping area in Xen space requires more than
one level-1 pagetable page on PAE and x86/64. Generalise
the existing code to allocate and map an appropriate number
of level-1 pagetable pages.

Signed-off-by: Jun Nakajima <jun.nakajima@intel.com>
Signed-off-by: Keir Fraser <keir@xensource.com>
2005-11-17 12:52:42 +01:00
emellor@leeni.uk.xensource.com 56bb0fdcd9 Merged. 2005-11-17 12:12:57 +01:00
emellor@leeni.uk.xensource.com ed3752b5a0 Documentation: remove Twisted Matrix pre-req
Twisted Matrix is no longer necessary for Xen.  Removed from the
pre-requisites listed in the user documentation.

Signed-off-by: Andrew D. Ball <aball@us.ibm.com>
2005-11-17 12:10:08 +01:00
dan@guaranine.beaverton.ibm.com 17cb704e41 Updates to the xm-test README file. 2005-11-17 12:09:09 +01:00
emellor@leeni.uk.xensource.com 8add0c9fed This patch explains network-* options in xm.1, including the bits that are
currently not really working.

Signed off by: Sean Dague <sean@dague.net>
2005-11-17 12:01:13 +01:00
dan@guaranine.beaverton.ibm.com aafdb94b17 Update 01_pause_basic test for new console behavior. 2005-11-17 11:58:36 +01:00
dan@guaranine.beaverton.ibm.com 0dc1cf094a Make test 04_memset detect bug #380 and restart the console daemon.
This should allow the rest of the tests to run without reporting
failure because this test killed the console system.
2005-11-17 11:56:13 +01:00
emellor@leeni.uk.xensource.com 439bebba61 Here's the patch for making the otherend_changed entrypoint
optional.  The USB driver doesn't need this entrypoint because the state
machine driven by it is factored out of the driver code entirely into
xenidc.

Signed-off-by: Harry Butterworth butterwo@uk.ibm.com
2005-11-17 11:54:52 +01:00
kaf24@firebug.cl.cam.ac.uk 77625388ed Fix IOCTL_PRIVCMD_GET_MACH2PHYS_MFNS to work properly for
4MB superpages (32-bit non-pae).

Signed-off-by: Keir Fraser <keir@xensource.com>
2005-11-17 11:47:49 +01:00
smh22@firebug.cl.cam.ac.uk a041c675c7 Fix pinning logic on restore.
Signed-off-by: Steven Hand <steven@xensource.com>
2005-11-17 10:10:52 +01:00
emellor@leeni.uk.xensource.com b3670cac54 Merged. 2005-11-16 20:33:23 +01:00
dan@guaranine.beaverton.ibm.com cf01e4ff3b Test for creating a domain with too little memory. 2005-11-16 20:33:12 +01:00
dan@guaranine.beaverton.ibm.com 574b65be2f Make 01_reboot test more robust.
We need to attach a console before rebooting to make sure the domain did
actually boot in the first place.  Also, use a better method for pulling out
the uptime string.
2005-11-16 20:32:36 +01:00
smh22@firebug.cl.cam.ac.uk 0f2781b12e One more try...
Signed-off-by: Steven Hand <steven@xensource.com>
2005-11-16 18:41:43 +01:00
smh22@firebug.cl.cam.ac.uk 5aebcfee2a Fix annoying error introduced during cleanup. Oops.
Signed-off-by: Steven Hand <steven@xensource.com>
2005-11-16 18:28:09 +01:00
smh22@tempest.cl.cam.ac.uk 99e88d6dd7 Trivial fixes for 64bit and xend.
Signed-off-by: Steven Hand <steven@xensource.com>
2005-11-16 18:03:48 +01:00
smh22@firebug.cl.cam.ac.uk 4c908cf0e3 Many fixes for save/restore and related areas for PAE in particular. Now
should be able to save/restore successfully on machines with up to 16GB 
and any size of guest. 

Signed-off-by: Steven Hand <steven@xensource.com>
2005-11-16 17:45:03 +01:00
emellor@leeni.uk.xensource.com 329d8364e0 Merged. 2005-11-16 15:50:36 +01:00
emellor@leeni.uk.xensource.com 02d6c42688 Watch for changes in the /vm section of the store, so that we update our
internal state if the store is configured by an external tool.

We react properly to changes in name and on_{reboot,poweroff,crash}.  Reacting
correctly to vcpus, vcpu_avail, memory, and maxmem will come soon (those code
aspects are already under review).  cpu_weight and bootloader to be considered.

Removed unused and semantically invalid method XendDomainInfo.setDomid.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-11-16 15:32:56 +01:00
emellor@leeni.uk.xensource.com 8676593f36 Added an unwatch method, so that XendDomainInfo can unregister the watch from
outside the watch handler.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-11-16 15:27:59 +01:00