Commit Graph
1679 Commits
Author SHA1 Message Date
kaf24@firebug.cl.cam.ac.uk d2f97d17d4 The C interface no longer has a priority arg, but the python interface
still takes one (and just doesn't use it).  Noone uses it anyway, so
nothing should break by taking it away.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2005-08-05 09:02:58 +00:00
kaf24@firebug.cl.cam.ac.uk 04303c4108 Attached is a randomized tester for consoled. It's a patch against
xen-unstable.hg but it doesn't add itself to any of the Makefiles but 
just as a subdirectory of consoled.  There's a README in the directory 
that should be read otherwise you won't be able to do anything useful 
with it :-)

Right now, we can get pretty far before seeing data corruption.  
Previously, we'd see it almost immediately (after ~600 bytes, which is 
the max the control channel can hold before filling up).

It's actual general enough that it could be also used to test network 
traffic corruption but there are certainly better tools for that.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2005-08-05 09:02:09 +00:00
kaf24@firebug.cl.cam.ac.uk af976cb9bd Instead of queuing messages when the control channels are full, xcs just
does nothing (see ctrl_interface.c:ctrl_chan_write_request()).

The following patch throttles the rate in which consoled writes data to 
xcs.  With the current values, you get a responsive console but avoid 
data corruption in most scenarios.

I'm able to get pretty far in my regression test with this patch.  With 
higher throttle values I'm able to get even further (but the console 
becomes painfully slow).

I implemented proper control channel queuing in xenctld in VM-Tools and 
it's pretty nasty stuff.  This should prevent corruption for most users 
until we can get rid of xcs.

Regards,

Anthony Liguori

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com
2005-08-05 09:01:30 +00:00
kaf24@firebug.cl.cam.ac.uk 73349217f0 xc_console is probably too chatty about termios failures since ssh
sessions apparently don't have proper term settings.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2005-08-05 09:00:50 +00:00
kaf24@firebug.cl.cam.ac.uk fe0b8e6e6e The attached patch:
1. Converts the shutdown driver and xend to use the store instead of
   control messages, 

2. Includes Anthony's xenstore notification code, and

3. Changes xend so that sysrq's are no longer sent as "special case"
   shutdown messages.  Store keys are cheap, so making the sysrq
   delivery less obscure is good.

I think I have made all of the appropriate modifications to Xend, but
it is complex, so I may have missed something.  Comments are welcome.

Signed-off-by: Dan Smith <danms@us.ibm.com>
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2005-08-05 08:59:41 +00:00
kaf24@firebug.cl.cam.ac.uk 1126965540 Attached are
three patches to fix a problem with Xend starting consoled.  consoled 
depends on xenstored to be running and xenstored is started on demand in 
Xend.  The patches change xenstored to manage its own pidfile, and have 
xend start actually start up xenstored.
2005-08-04 18:51:55 +00:00
akw27@arcadians.cl.cam.ac.uk 15c8e89845 Blktap updates: request batching, O_DIRECT/AIO support.
This patch changes the blktap code mapping pages to user space to be
faster and to allow page lookups to foreign mapped pages through linux
to do direct io.  An AIO test driver on this achieves comparable
performance to the in-kernel block-backend.

Signed-off-by: andrew.warfield@cl.cam.ac.uk
2005-08-04 16:35:35 +00:00
akw27@arcadians.cl.cam.ac.uk 8148452c35 Add missing parallax makefile.
Seems to have vanished in the directory shuffle of last month.

Signed-off-by: andrew.warfield@cl.cam.ac.uk
Signed-off-by: Nguyen Anh Quynh <aquynh@gmail.com>
2005-08-04 15:02:09 +00:00
kaf24@firebug.cl.cam.ac.uk f6d93de51e The attached patch removes all of the console handling code from Xend
and changes xm to simply exec /usr/libexec/xen/xc_console.

I've done a pretty good amount of testing and this seems to clear up all 
of the Xend console issues in bugzilla.

This is a pretty big change to Xend though with a lot of deleted code so 
I'd appreciate if people more familiar with the Xend codebase could look 
through it critically.

In addition to the patch, the following files are no longer used:

tools/python/xen/util/console_client.py
tools/python/xen/xend/XendConsole.py
tools/python/xen/xend/server/SrvConsole.py
tools/python/xen/xend/server/SrvConsoleDir.py
tools/python/xen/xend/server/console.py

Regards,

Anthony Liguori

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2005-08-04 09:00:16 +00:00
kaf24@firebug.cl.cam.ac.uk c025f1530a Here are another couple of places where 8 sectors/page is assumed,
which I missed in my first patch.

Signed-off-by: Matthew Chapman <matthewc@hp.com>
2005-08-04 08:58:18 +00:00
kaf24@firebug.cl.cam.ac.uk 165c0d1741 libxenstore (used to access the daemon) should be licensed under LGPL.
There are several people I am aware of interested in writing non-GPL
tools, and this code is trivial, so they'd just end up writing their
own.
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
2005-08-04 08:57:37 +00:00
kaf24@firebug.cl.cam.ac.uk baa265234e 1) Make more functions in io.c static
2) Fix memory leak in domain free
3) Fix error path in read (reported by aq)
4) Move reading of buffer limit to tty reconnect so that changes in 
limit take affect more quickly.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2005-08-03 09:32:39 +00:00
cl349@firebug.cl.cam.ac.uk cfd6b38dc8 Update xenstore python bindings for "Implement watching of nodes which don't exist."
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2005-08-02 19:19:16 +00:00
cl349@firebug.cl.cam.ac.uk b7f49181c9 Implement watching of nodes which don't exist.
Requires permission check every time event is generated.
Requires generalization of permissions: ask arbitrary number of
parents whether it's OK to tell about node (eg. watching
/dir/subdir/x when /dir is deleted: root permissions will now
determine whether we fire event).
Add test that we don't leak information on whether a file exists
or not.
Signed-off-by: Rusty Russel <rusty@rustcorp.com.au>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2005-08-02 18:04:28 +00:00
cl349@firebug.cl.cam.ac.uk 0603c5d12a Fix typo.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2005-08-02 18:04:00 +00:00
cl349@firebug.cl.cam.ac.uk 879b63b37c Fix up non-valgrind case to send stderr to file like valgrind case does.
(Having trouble with signal delivery and valgrind, causing spurious test
timeouts)
Signed-off-by: Rusty Russel <rusty@rustcorp.com.au>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2005-08-02 17:59:59 +00:00
cl349@firebug.cl.cam.ac.uk c5a8d2c78b Don't abort on untranslatable errors: EINVAL and print warning
Signed-off-by: Rusty Russel <rusty@rustcorp.com.au>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2005-08-02 17:59:20 +00:00
cl349@firebug.cl.cam.ac.uk d16ff05a08 merge? 2005-08-02 17:13:11 +00:00
cl349@firebug.cl.cam.ac.uk 59f1e250c2 Fix checkpointing - add save/restore support to the xenbus driver.
- Add xenbus driver suspend/resume functions
- Change xenbus irq to not be shared
- Translate store mfn in suspend record to pfn and back
- Make tools re-introduce the domain to the store
Signed-off-by: Rusty Russel <rusty@rustcorp.com.au>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2005-08-02 17:12:36 +00:00
smh22@firebug.cl.cam.ac.uk bf4410c5bc Fixes. 2005-08-02 15:42:06 +00:00
kaf24@firebug.cl.cam.ac.uk 7dd5c4ef07 A few consoled tweaks. It's not worth building by default
right now as it isn;t actually used.
2005-08-02 14:51:06 +00:00
kaf24@firebug.cl.cam.ac.uk 81efc4a27f Remove some binary files. 2005-08-02 12:37:37 +00:00
kaf24@firebug.cl.cam.ac.uk ecf4de1162 This is the first patch to move the console code out of Xend and into a
separate daemon.  In this patch I've included the daemon and a 
front-end.  I've also have the console code removed from Xend locally 
but I wanted to clarify a few things first before submitting that.

Here's how it works:

1) Daemon sits on control channel (via xcs) waiting for console messages
2) Buffers all console data received
3) Publishes the location of a tty that can be used for reading in 
/console/<domid>/tty
4) Reads a value from the store to determine what the limit of console 
data should be (/console/<domid>/limit) to prevent DoS attacks

Using it is quite simple, just run consoled and use the xc_console 
program to connect to the console.  It uses syslog for logging.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2005-08-02 12:18:47 +00:00
kaf24@firebug.cl.cam.ac.uk 0e535dd1ce This is the first patch to move the console code out of Xend and into a
separate daemon.  In this patch I've included the daemon and a 
front-end.  I've also have the console code removed from Xend locally 
but I wanted to clarify a few things first before submitting that.

Here's how it works:

1) Daemon sits on control channel (via xcs) waiting for console messages
2) Buffers all console data received
3) Publishes the location of a tty that can be used for reading in 
/console/<domid>/tty
4) Reads a value from the store to determine what the limit of console 
data should be (/console/<domid>/limit) to prevent DoS attacks

Using it is quite simple, just run consoled and use the xc_console 
program to connect to the console.  It uses syslog for logging.

Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2005-08-02 12:18:15 +00:00
smh22@firebug.cl.cam.ac.uk a621fb860f Manual merge. 2005-08-02 11:35:45 +00:00
smh22@firebug.cl.cam.ac.uk b9ca214b2d Disable build of pygrub for now - does not build with e2fsprogs-1.35
Signed-off-by: Steven Hand <steven@xensource.com>
2005-08-02 11:34:38 +00:00
smh22@firebug.cl.cam.ac.uk 024fb8a600 Fix typo in pygrub code 2005-08-02 11:27:58 +00:00
kaf24@firebug.cl.cam.ac.uk 794c430127 The attached patch converts the balloon driver and xend to use
xenstore instead of control messages.

Note: Because there is no way to set a watch on a non-existent key,
this patch includes a workaround to account for the fact that dom0's
store keys are not initialized by the tools before it boots.

Signed-off-by: Dan Smith <danms@us.ibm.com>
2005-08-02 11:21:11 +00:00
kaf24@firebug.cl.cam.ac.uk 5f5202f471 Missing ia64_stubs file for libxc. 2005-08-02 11:08:47 +00:00
smh22@firebug.cl.cam.ac.uk 6b3b33d853 Remainder of ACM patch (hgrrrr).
Signed-off-by: Reiner Sailer <sailer@watson.ibm.com>
Signed-off-by: Steven Hand <steven@xensource.com>
2005-08-02 10:15:17 +00:00
smh22@firebug.cl.cam.ac.uk bd471dc416 The patches below clean-up sHype-related file names in the tools subtree
and security policy-versioning and data structures in the xen subtree 
(ACM):

 *  the very generic tools directory name "policy"  is changed to 
    "security" and the included "policy_tool" to "secpol_tool"

 * the single constant POLICY_INTERFACE_VERSION is replaced 
   by ACM_INTERFACE_VERSION; the security policy headers are
   versioned independently since the policy can be supplied
   at boot time instead of through the  hypervisor interface

Signed-off-by: Reiner Sailer <sailer@watson.ibm.com>
Signed-off-by: Steven Hand <steven@xensource.com>
2005-08-02 09:37:00 +00:00
smh22@firebug.cl.cam.ac.uk a89e4d770c The attached patch adds the support that was only stubbed in to be able
to support having reading the boot loader config when you're using a
whole disk (eg, file:/root/disk.img,xvda,w) as opposed to just a
partition.

This reads the partition table in the MBR to find the active partition
and then passes that offset down into the filesystem reading code.

Signed-off-by: Jeremy Katz <katzj@redhat.com>
2005-08-02 09:31:47 +00:00
smh22@firebug.cl.cam.ac.uk 8dbafbfdcc * support proper scsi disk name
* xvd now has an official lanana assigned major, use it

Signed-off-by: Jeremy Katz <katzj@redhat.com>
2005-08-02 09:29:56 +00:00
ach61@arcadians.cl.cam.ac.uk df47943bc5 PDB: convert ptrace.c and traps.c changes to local patches 2005-08-01 10:43:16 +00:00
kaf24@firebug.cl.cam.ac.uk ecfbf99a10 This patch renames balloon command to "set-mem", so instead of "xm
balloon", we will use "xm set-mem" (as suggested by TODO list)

Signed-off-by: Nguyen Anh Quynh <aquynh@gmail.com>
2005-07-29 10:37:30 +00:00
kaf24@firebug.cl.cam.ac.uk 084dedfee3 This patch does 2 jobs:
- Enforce the number of CPUs dom0 will take. See the new variable
"dom0-cpus" in xend-config.sxp (you will want to set this variable to
1 on SMP systems)

- Balloon out dom0 memory when creating domU, if there is not enough
free memory. The lowest level we will balloon out is configured via
the new variable "dom0-min-mem" in xend-config.sxp


I still have a doubt: where to put the code to enforce dom0-cpus. At
the moment I put it into
python/xen/xend/server/SrvDaemon.py, and hopefully that is resonable
enough. Any comment?



Signed-off-by: Nguyen Anh Quynh <aquynh@gmail.com>
2005-07-29 10:36:53 +00:00
kaf24@firebug.cl.cam.ac.uk 12b1a321bd Here is our latest patch to enable the Xen tools to
build and work with IA64 Xen.
Signed-off-by: Matt Chapman <matthewc@hp.com>
Acked-by: Dan Magenheimer <dan.magenheimer@hp.com>
2005-07-29 10:34:45 +00:00
kaf24@firebug.cl.cam.ac.uk 4e6f46cf10 This patch updates the CPU field in xm list for multi-vcpu domains.
When a dom runs on multiple physical cpus, the CPU field doesn't have
much meaning.  The suggested fix was to replace the value with '-'.  
Signed-off-by: Ryan Harper <ryanh@us.ibm.com>
2005-07-29 10:27:12 +00:00
ach61@arcadians.cl.cam.ac.uk a087d98570 PDB: add some additional files 2005-07-28 21:32:13 +00:00
ach61@arcadians.cl.cam.ac.uk 476167d4df PDB: process targets 2005-07-28 21:28:23 +00:00
cl349@firebug.cl.cam.ac.uk 0c4fa371ca Don't unbind port when event channel binding fails.
This happens when xend tries to introduce the same domain twice.
Signed-off-by: Rusty Russel <rusty@rustcorp.com.au>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2005-07-28 12:33:53 +00:00
cl349@firebug.cl.cam.ac.uk 1b268774e8 Get rid of internet_copy.jpg once more.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2005-07-27 18:41:49 +00:00
cl349@firebug.cl.cam.ac.uk 14302840ff Don't ignore exceptions here - the possible RuntimeError is handled already.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2005-07-27 18:40:32 +00:00
cl349@firebug.cl.cam.ac.uk 272942eeb3 Introduce dom0 to the store.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2005-07-27 18:31:18 +00:00
cl349@firebug.cl.cam.ac.uk 001ee4ddde Handle introduce_domain failing when the domain is already introduced.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2005-07-27 18:31:03 +00:00
cl349@firebug.cl.cam.ac.uk 7aa5afeb6c Always pass around the store machine frame number instead of the linear address.
Also cleanup IOCTL_PRIVCMD_INITDOMAIN_STORE.
Signed-off-by: Rusty Russel <rusty@rustcorp.com.au>
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2005-07-27 17:17:09 +00:00
cl349@firebug.cl.cam.ac.uk f2cbf339d4 Add xc_init_store python binding.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2005-07-27 17:06:02 +00:00
cl349@firebug.cl.cam.ac.uk 57103c6152 Fix read of integers from database on event channel restore.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2005-07-27 17:04:47 +00:00
cl349@firebug.cl.cam.ac.uk 55e1cda4c0 Make XENSTORED_DEBUG create a xenstored trace logfile.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2005-07-27 17:03:00 +00:00
cl349@firebug.cl.cam.ac.uk 0e358737de Move SIF_BLK_BE_DOMAIN and SIF_NET_BE_DOMAIN definitions to where they are used.
Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
2005-07-27 17:00:24 +00:00