Commit Graph
8 Commits
Author SHA1 Message Date
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 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
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