- renames the XenManagedDomain.py file to XenAPIDomain.py, since this
name better reflects its functionality/purpose
- adds domain tracking to the XenAPIDomain class so that xend-managed
domains can be deleted in an 'atexit' handler upon test case termination
- adds one basic xapi-related test which is part of the grouptests
'xapi'
- refactors the vtpm-related test using xen-api and adds it to the
grouptest 'xapi'
- adds documentation to the README for how to configure xm and xend to
use XML-RPC or Xen-API for communication
Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
similar to the XmTestDomain and XenDomain classes. I have wrapped the
xen-api for VM configuration creation, starting and stopping of VMs and
destruction of the VM configuration in the XenManagedDomain class's
methods. No device-related functions are provided through the class.
The managed domains' UUIDs are tracked and all created VMs are destroyed
upon failure or skipping of the test or by calling
xapi.vm_destroy_all().
I am adding a new grouptest 'xapi' for running xen-api tests.
Only caveat: I am using an empty username and password
(XmTestList/xapi.py) with Xend's authentication deactivated to run these
tests.
Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
expected.
Now that xm list outputs the real system memory allocation, this can
be 1-2MB less than expected.
Signed-off-by: Alastair Tse <atse@xensource.com>
This patch also modifies
09_block_attach_and_dettach_device_check_data_pos.py to force / to be
read-write otherwise the mkdir fails.
Also Whistspace cleanups.
Signed-off-by: Tony Breeds <tony@bakeyournoodle.com>
as XmTestDomain does. This part of the patch forces both HVM and
non-HVM tests to use XmTestDomain. With appropriate changes to the
extraConfig arg.
On PPC we need to use the arch defaults to get the console setup
correctly.
Signed-off-by: Tony Breeds <tony@bakeyournoodle.com>
the xm test suite. The tests can be run with ACM turned off (not
compiled into Xen; see user doc for this), but most of them will be
skipped then. They can be run with a command like
make -C tests/security-acm check-TESTS
from the xm-test directory. They are also part of the default tests in
the tests suite and part of a new group test 'security'.
Since some of the tests require resources to be labeled, one must
explicitly enable the resources to be allowed to be labeled by the
test
suite by running
./configure --enable-full-labeling
once. To turn it off, the '--enable-full-labeling' parameter should be
omitted.
Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
output seems to be broken up into multiple write()s (depending on the
version of busybox?). Unfortunately /dev/tpm0 needs to have the complete
command written to in one chunk. The work-around 'echo <string> > file ;
cat file > /dev/tpm0' seems to get around this problem.
The patch also removes a redundant test and error output.
Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
state of a PCR register and test that the value remains the same during
a suspend/resume cycle and during live and non-live local migration.
The patch adapts existing tests to the changes in the driver (moving of
the sysfs entry). Some problems with existing tests are fixed.
Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
The 02_block_device_write_verify.py test that I wrote is failing because
the regular expression to extract the md5sum is only looking at the
first line of output and the sum is in a subsequent line (after the
output from dd).
This patch fixes the test by adding the multiline flag to the search
parameters so that the search looks in all lines of the output for the
md5sum. I added the multiline flag in all searches to make the tests
more robust against changes in the output format of the commands used.
I'm not exactly sure how this slipped through my testing. I suspect
that I forgot to install the new python file after updating the test to
use dd and then tested the old version a second time by accident.
Either that or it really did work when I tested it and the output format
has changed for some reason.
I tested this patch against xen-unstable 10326 and the 02 test fails
without the patch and succeeds with it.
Thanks to James Dykman for some help with this.
Signed-off-by Harry Butterworth <butterwo@uk.ibm.com>
This test imports a ram disk device as a physical device into a domU.
The domU initialises the ram disk with data from /dev/urandom and
calculates the md5 checksum of the data (using tee as it is written so as to
avoid reading it back from the device which might potentially mask
problems).
The domU is stopped and the md5 checksum of the data on the device is
calculated by dom0. The test succeeds if the checksums match, indicating
that all the data written by domU was sucessfully committed to the
device.
This patch also enables tee in BusyBox on the ramdisk and increments the
xm-test version number to 0.8.0.
The patch also installs the block-integrity tests in the default test
set so they get executed.
Signed-off-by: Harry Butterworth <butterwo@uk.ibm.com>
Signed-off-by: Ewan Mellor <ewan@xensource.com>
checks to see if they have been set correctly. We found that on
multi-proc systems, it takes a certain amount of time for the number of
vcpus to change.
This patch checks the number of vcpus inside a loop until it is correct
or 20 seconds elapse, whichever happens first. If after 20 seconds the
number of vcpus is not changed correctly, an error is raised.
Signed-off-by: Rajagopalan Subrahmanian <raj.subrahmanian@unisys.com>
online. Also fix bogus call to vcpu-enable; xm now uses vcpu-set as method for
enable/disable of vcpus. Previously after a successful test run, this test
would not leave dom0 in the same state as it was when the test started. Also
some comment language changes and 80 column formatting.
local network migration without the 'live' parameter 3 times. The test
'04' that does live migration now tests local live migration 3 times.
Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
creating domains with networking very easy. This patch:
1) Adds new XenDevice class, with the XenNetDevice subclass. These
classes represent devices for xm-test and are tied to XenDomains.
This can eventually be used for block devices as well. Currently,
devices must be added to domains prior to starting the domain. The
attach and detach needs to be handled.
2) Adds a new NetConfig class to handle configuring the network
environment in which the tests run. This patch only handles ranges
of IPs in a bridged environment. DHCP needs to be added as well as
handling NAT and routed environments.
3) Modifies XenDomain class to handle XenDevices.
4) Adds new configuration options for defining a range of IPs, their
network address, and their netmask.
5) Removes the old Network.py and Network class.
6) Modifies the existing tests to use the new infrastructure.
7) Adds some documentation to help creating domains.
Signed-off-by: Daniel Stekloff <dsteklof@us.ibm.com>
in XenDomain. The devices we will add, like network, will need to run
console commands when a domain is started. So I have made console be
a part of domain object, which it's tied to anyway.
Signed-off-by: Daniel Stekloff <dsteklof@us.ibm.com>
domUs with 64MB of memory,
and assume that all of that memory is available in the domU. They then
perform various xm memset tests
based on the assumed starting conditions.
When netback & blkback are comiled into the domU kernel, they eat about
5MB. This mismatch will cause
01_memset_basic_pos.test to fail every time. 03_memset_random_pos.test
will probably fail, but can
pass with some lucky numbers from the random number generator.
This patch changes both tests to read the starting memory allocation from
the balloon driver in the domU.
Signed-off-by: Jim Dykman <dykman@us.ibm.com>
before detaching it. Fix a race condition that dom0 was tearing down the
block device while the guest was putting it in a Connected state.
Signed-off-by: Vincent Hanquez <vincent@snarc.org>
set console.limit command in the test was never being run. The select in
Console.py was never timing out because there was always someting to read on
the fd, the OOM messages are constant. So the test would hang.
The fix includes:
1) Changing MEM in 15_create_smallmem_pos.py to 32MBs, which is the default
for the tools that should work.
2) Change the XmConsole init to add an argument to set the console limit
when it's created.
3) Set a default large limit for console so we won't hang in the future.
4) Added a new 16_create_smallmem_neg.py test to handle failure situation.
5) Added comment in README.
Signed-off-by: Daniel Stekloff <dsteklof@us.ibm.com>
Now that sysfs is mounted in the RAM disk of the test environment, the
test code does not need to do this anymore. This patch also simplifies
previous tests and the APIs used there. If prerequisites are not met
(vtpm manager not running) the patch will 'skip'.
Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
- Aligned output and help to fit within 80 char limit
- User now deals in milliseconds instead of nanoseconds
- Fixed some missing parens in tests (I had pushed stale versions)
- Updated tests to deal with period/slice/latency in ms
root@bebop:~/xm-test.sedf/tests/sedf # xm sched-sedf
Name ID Period(ms) Slice(ms) Lat(ms) Extra Weight
Domain-0 0 20.0 15.0 0.0 1 0
Signed-off-by: Ryan Harper <ryanh@us.ibm.com>
load as many disk.img domains as there are loop devices. Added a
small function to get number of loop devices to be used as a max
for number of concurrent domains the test launches.
Signed-off-by: Daniel Stekloff <dsteklof@us.ibm.com>