Commit Graph
2860 Commits
Author SHA1 Message Date
emellor@leeni.uk.xensource.com 056647a91c Merged. 2005-12-13 16:26:33 +00:00
emellor@leeni.uk.xensource.com bf68bfcf48 Change the way domain configuration is handled in xm-test.
This will simplify the way we differentiate between HV and PV domains,
as well as make it easier to run normal tests in either HV or PV mode.

This patch has been modified by Ewan Mellor, to match his recent changes to
remove the nics= configuration option.

Signed-off-by: Dan Smith <danms@us.ibm.com>
Signed-off-by: Dan Stekloff <dsteklof@us.ibm.com>
2005-12-13 16:26:24 +00:00
kaf24@firebug.cl.cam.ac.uk f0756c96a0 A new ACM security tool providing support to aid in the
creation/generation of the XML security policy files for the Xen ACM
security architecture.  It is a python- based, web-based tool named
xensec_gen that allows users to create or modify XML policy files
through a browser.  The resulting XML policy files can then be copied
or moved to the appropriate location in the /etc/xen/acm-security
directory structure in order to be translated into binary and used
within the Xen system.

Signed-off-by: Tom Lendacky <toml@us.ibm.com>
2005-12-13 17:12:59 +01:00
kaf24@firebug.cl.cam.ac.uk 2bdefee6ab Add an option for device model to disable key repeat.
On slow network, when creating a vmx guest remotely,
the key repeat feature may make it hard to even type
the user name and password to login in to guest OS.

Signed-off-by: Eddie Dong <eddie.dong@intel.com>
Signed-off-by: Xiaofeng Ling <xiaofeng.ling@intel.com>
2005-12-13 17:01:09 +01:00
emellor@leeni.uk.xensource.com a9b9f0585c Merged. 2005-12-13 10:57:18 +00:00
Xiaofeng Ling e697c7e8ef change the NIC configuration accordingly after remove "nics=n"
otherwise, nics=-1 will be passed to device model and cause device
model exiting.

Signed-off-by: Xiaofeng Ling <xiaofeng.ling@intel.com>
2005-12-13 10:57:04 +00:00
emellor@leeni.uk.xensource.com b57b530e0a Match previous changeset removing nics option.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-13 00:56:50 +00:00
emellor@leeni.uk.xensource.com bc8ed50e6c Deprecate the nics option from the xm create configuration. Instead, we use the
entries in vif to guide the configuration.  This is much less confusing.

Closes bug #440.

Change the example configuration files to match.  Also change them to use the
XenSource OUI in the MAC addresses.  Also change xm-test to match.

Remove the obsolete ipaddr configuration entry, and the backend_mac vif config
option.

Remove the preprocess_vifs function, folding it into the configure_vifs
function, and creating a simple comma_sep_kv_to_dict helper.

Remove the configure_vfr method, as it is unused.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-13 00:15:53 +00:00
emellor@leeni.uk.xensource.com 296749cb10 Don't try and close the pipe to the grandparent if it has already been closed
(i.e. we have restarted Xend).

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-13 00:10:19 +00:00
emellor@leeni.uk.xensource.com 17d0f5bf16 Read the domid and vifid from the store, rather than horribly slicing up the
store path.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-12 17:13:38 +00:00
emellor@leeni.uk.xensource.com 742b21299e Added xend-relocation-hosts-allow option.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-12 16:48:24 +00:00
emellor@leeni.uk.xensource.com 151c1bdf9c Squelch error message from iptables (we log this later if necessary).
Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-12 16:44:27 +00:00
emellor@leeni.uk.xensource.com 03bbc8cec6 Added a hosts-allow facility to TCP connections, which allows us to restrict
the acceptable connections based upon a regular expression comparison with the
FQDN or the IP address.

Use the hosts-allow facility to restrict access to the relocation socket.  This
adds the configuration option xend-relocation-hosts-allow, which takes a
space-separated sequence of regular expressions.

Pass the protocol class instance through to SocketServerConnection, rather than
a new instance of that class.  This means that the new instance need not be
passed through SocketListener.acceptConnection.

Make the SocketServerConnection and SocketListener classes start their
corresponding threads and open their sockets (in the case of SocketListener)
automatically.  This means that callers do not need to save an instance locally,
just to call run() or listen() on it.  This also means that listenTCP and
listenUnix can go -- simply creating a TCPListener or UnixListener instance is
sufficient.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-12 16:43:48 +00:00
emellor@leeni.uk.xensource.com 91da6b2f1c Minor tidy.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-12 16:32:50 +00:00
emellor@leeni.uk.xensource.com 6efef1afab Make from_string('') return []. This means that it is not necessary for our
callers to special-case this value -- the [] is a valid sxp.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-12 16:32:19 +00:00
emellor@leeni.uk.xensource.com 3b7940ffef Minor import tidy.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-12 16:24:32 +00:00
Anthony Liguori d4895766cb Make sure to fork again after setsid() so that child cannot regain CTTY.
Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
2005-12-12 15:11:13 +00:00
emellor@leeni.uk.xensource.com 56233085ef Remove unused netmask,network etc. These were used when we called ifconfig to
set up the networking, but now that we use ip directly, we don't need them, and
they were in any case broken when the ip address was specified without a suffix.

This work is by James Dykman <dykman@us.ibm.com>.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-12 11:15:29 +00:00
kaf24@firebug.cl.cam.ac.uk c141dd87af Rename QEMU device model log file from /tmp/qemu.log to
/var/log/qemu-dm.<pid>.log.
Also redirect stderr to this log file.

Signed-off-by: Xin Li <xin.b.li@intel.com>
2005-12-11 00:20:08 +01:00
kaf24@firebug.cl.cam.ac.uk e53027149f Fix indentation in a few places.
Signed-off-by: Xin Li <xin.b.li@intel.com>
2005-12-11 00:16:26 +01:00
emellor@leeni.uk.xensource.com 2fdffd69ae Merged. 2005-12-09 11:05:06 +00:00
stekloff@elm3b216.beaverton.ibm.com 86867006af Add initial VMX support to xm-test:
1) Added script create_disk_image to make full virt image
2) Changed XenDomain.py to build separate XmTestDomain object
   for vmx guests (this structure will need to be cleaned up)
3) Changed ramdisk Makefile.am to create disk.img if vmx configured

Signed-off-by: Daniel Stekloff <dsteklof@us.ibm.com>
2005-12-09 11:04:55 +00:00
emellor@leeni.uk.xensource.com 53dcf75ccb Merged. 2005-12-09 10:51:35 +00:00
emellor@leeni.uk.xensource.com 3732520993 Use new do_without_error function to squelch the error when closing down the
interface.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-09 10:51:20 +00:00
emellor@leeni.uk.xensource.com c9392b836d Use new do_without_error function to squelch the errors when closing down an
interface.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-09 10:50:49 +00:00
emellor@leeni.uk.xensource.com c542b41feb Added do_without_error function, and squelch the error from mkdir when trying
to create the lock directory.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-09 10:50:26 +00:00
emellor@leeni.uk.xensource.com 9ab74b250b Add one more fork to the Xend start-up process, this time with the parent
staying alive to watch the child.  If the child crashes, then the parent
starts another one in its place.  This provides robustness in the face of
crashes like one currently tracked as bug #411.

Tidy up chunks of SrvDaemon.py on the way past.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-09 10:49:29 +00:00
emellor@leeni.uk.xensource.com 293e54c10b Two domUs, ping from one to the other
Signed-off-by: Jim Dykman <dykman@us.ibm.com>
2005-12-09 10:40:41 +00:00
emellor@leeni.uk.xensource.com 1df940267e Single domU, ping to dom0.
Signed-off-by: Jim Dykman <dykman@us.ibm.com>
2005-12-09 10:40:28 +00:00
emellor@leeni.uk.xensource.com ef4e38f80a Single domU, ping loopback and the local eth0.
Signed-off-by: Jim Dykman <dykman@us.ibm.com>
2005-12-09 10:40:00 +00:00
emellor@leeni.uk.xensource.com bb1275eca8 Some network test utilities for the library:
Signed-off-by: Jim Dykman <dykman@us.ibm.com>
2005-12-09 10:39:31 +00:00
emellor@leeni.uk.xensource.com 92f0952573 Makefile plumbing for new network tests.
Signed-off-by: Jim Dykman <dykman@us.ibm.com>
2005-12-09 10:39:16 +00:00
emellor@leeni.uk.xensource.com 548733e866 The attached patch makes a couple of changes to the ACM security tools
and installation. Particularly it does the following:
- the Makefile installs the ACM security-related tools
into /etc/xen/acm-security
- improves and cleans up some of the tools
- updates the documentation

Signed-off-by: Tom Lendacky <toml@us.ibm.com>
Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
2005-12-08 18:21:05 +00:00
emellor@leeni.uk.xensource.com ced2f6408d The attached patch uncouples the device id used inside XenD from the
instance number of the vTPM.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
2005-12-08 18:19:24 +00:00
emellor@leeni.uk.xensource.com 028268e9bc Looks like someone merged and moved the pincpu operation to after the
memory reservation and didn't read the comments I left in the code:

# repin domain vcpus if a restricted cpus list is provided
# this is done prior to memory allocation to aide in memory
# distribution for NUMA systems.

This patch moves the pincpu op back to where it was.

Signed-off-by: Ryan Harper <ryanh@us.ibm.com>
2005-12-08 18:17:59 +00:00
emellor@leeni.uk.xensource.com d2b3b7424b Detach Xend from terminal, courtesy of Horms <horms@verge.net.au>.
* For setsid to effectively detach a process from the terminal,
  the following needs to occur:

    fork ()   Return control to the shell
    setsid () New session with no controlling terminal
    fork ()   The session leader (parent) exits and thus
              the resulting child process can never regain the terminal

  This patch adds the second fork

* The call to self.daemonize(), which now forks, is moved to
  run before self.tracing(), as now that it actually disconnects
  from the terminal, and thus the prevailing process, the trace
  loses the processes created in self.run().

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-08 16:17:53 +00:00
emellor@leeni.uk.xensource.com 72bb6de0e0 Flush the addresses from the new eth0 before trying to add the new address to
it, when using ip on the kernel command line and not using the installed ifup /
ifdown.  This stops the script bailing out if there is already an address
attached to that device, which was leaving the device without routing (since
this has already been removed).

Fix the stop action under the same circumstances.  No attempt was made to
restore the kernel command line details to the interfaces if the ifdown failed
in that case.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-08 16:11:48 +00:00
emellor@leeni.uk.xensource.com 458dbeddf3 Fix ip_of to cope with interfaces with multiple addresses, courtesy of
Adam Heath <doogie@brainfood.com>.
 
Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-08 15:54:35 +00:00
emellor@leeni.uk.xensource.com ae0212521e Strip huge piles of cruft from the connection infrastructure. We now actually
block inside accept rather than using select to poll and then calling accept
regardless of the outcome of the select call, and then failing because the
socket is non-blocking.

SocketClientConnection, SocketConnector, TCPClientConnection, TCPConnector,
connectTCP, UnixClientConnection, UnixConnector, connectUnix have gone.

loseConnection and stopListening and closeSocket (where they are needed) are
now called close.  startListening is now called listen.

Closes bug #379.

Relieves a weight from the shoulders of the universe.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-08 15:04:31 +00:00
emellor@leeni.uk.xensource.com 5ea39e7063 Move xm destroy handling out of crufty destroy.py and into main.py, where it
can share the better argument parsing.

Closes bug #443.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-08 14:30:15 +00:00
emellor@leeni.uk.xensource.com 6a6999e3fb Fix start_time parsing on restart -- it's a float, not an int.
Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-08 14:28:53 +00:00
emellor@leeni.uk.xensource.com 1c68755227 Merged. 2005-12-08 12:14:33 +00:00
emellor@leeni.uk.xensource.com 5c896ea1a5 Loop retrying when ballooning out, even when the dom0-min-mem setting means
that there is not sufficient memory available at the moment.  Memory may be
about to be freed up by the system after a domain destruction (i.e. the memory
is being scrubbed asynchronously, and will be released soon).

Closes bug #407, bug #429.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-08 12:13:06 +00:00
emellor@leeni.uk.xensource.com 83c3ceb178 Read start_time and image from the store on restart. Closes bugs #441 and
#442.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-08 12:10:22 +00:00
emellor@leeni.uk.xensource.com 7b4fe715a5 Refuse to save dom0, and move the check that refuses to migrate dom0 from
migrate.py into XendDomain.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-08 12:08:59 +00:00
vhanquez@kneesa.uk.xensource.com c2c982f908 allow a port to be specified for migration.
Signed-off-by: Vincent Hanquez <vincent@xensource.com>
2005-12-08 07:11:09 +00:00
emellor@leeni.uk.xensource.com d96a859929 Don't try and print out the info returned by the server after a restore -- there
isn't any.  Don't try and unpause the restored domain either -- XendCheckpoint
does that.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-07 16:26:07 +00:00
emellor@leeni.uk.xensource.com 4213a82e5b Use xm create's --dryrun option to get the name from the configuration file,
rather than the eversoskanky approach taken previously (use grep, and replace
any occurrences of %d with [0-9]* !)

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-07 16:25:13 +00:00
danms@us.ibm.com d8fdcac4df Make the xm-test ramdisk makefile correct the permissions on the rcS script
Signed-off-by: Dan Smith <danms@us.ibm.com>
2005-12-07 15:50:59 +00:00
emellor@leeni.uk.xensource.com afa150ca7c Fix the startup behaviour when the tdb file exists. We were attempting to
remove and recreate the /local directory, but the manual_node call only works
if the tdb is empty -- we must use create_node, otherwise the store is
corrupted.

It's not clear to me that the other manual_node calls are safe, but I have only
made this smaller change for the sake of stability.  These other calls should
be reviewed.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
2005-12-07 15:44:38 +00:00