]> xenbits.xensource.com Git - people/dariof/osstest.git/commitdiff
Add basic PVH flights.
authorIan Campbell <ian.campbell@citrix.com>
Thu, 4 Dec 2014 09:58:34 +0000 (09:58 +0000)
committerIan Campbell <ian.campbell@citrix.com>
Sat, 13 Dec 2014 15:03:14 +0000 (15:03 +0000)
These are the usual PV debian flights with pvh=1 added to the
configuration file.

A job is created for each of Intel and AMD, although obviously AMD is
expected to fail at the moment.

In my testing I got:
    (XEN) Attempt to create a PVH guest on a system without necessary hardware support
because my test box happens to be AMD.

I have confirmed that the pvh=1 option is correctly present in the
guest cfg for the new pvh job, and that no pvh= is present at all in
the existing test-amd64-amd64-xl job (which is expected and desired if
no pvh runvar is present).

Beyond that I've not tested this at all I fully expect even Intel to
fail in the first instance, due to issues such as lack of necessary
kernel options etc. I suggest to take this now and iterate on any
further changes.

For a xen-unstable flight this results in these runvars:
$ ./mg-show-flight-runvars pvh| grep -- -pvh | sort
test-amd64-amd64-xl-pvh-amd               all_hostflags               arch-amd64,arch-xen-amd64,suite-wheezy,purpose-test,hvm-amd
test-amd64-amd64-xl-pvh-amd               arch                        amd64
test-amd64-amd64-xl-pvh-amd               buildjob                    build-amd64
test-amd64-amd64-xl-pvh-amd               debian_arch                 amd64
test-amd64-amd64-xl-pvh-amd               debian_kernkind             pvops
test-amd64-amd64-xl-pvh-amd               debian_pvh                  1
test-amd64-amd64-xl-pvh-amd               kernbuildjob                build-amd64-pvops
test-amd64-amd64-xl-pvh-amd               kernkind                    pvops
test-amd64-amd64-xl-pvh-amd               toolstack                   xl
test-amd64-amd64-xl-pvh-amd               xenbuildjob                 build-amd64
test-amd64-amd64-xl-pvh-intel             all_hostflags               arch-amd64,arch-xen-amd64,suite-wheezy,purpose-test,hvm-intel
test-amd64-amd64-xl-pvh-intel             arch                        amd64
test-amd64-amd64-xl-pvh-intel             buildjob                    build-amd64
test-amd64-amd64-xl-pvh-intel             debian_arch                 amd64
test-amd64-amd64-xl-pvh-intel             debian_kernkind             pvops
test-amd64-amd64-xl-pvh-intel             debian_pvh                  1
test-amd64-amd64-xl-pvh-intel             kernbuildjob                build-amd64-pvops
test-amd64-amd64-xl-pvh-intel             kernkind                    pvops
test-amd64-amd64-xl-pvh-intel             toolstack                   xl
test-amd64-amd64-xl-pvh-intel             xenbuildjob                 build-amd64

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
---
v2: pvh\b.*.

make-flight
ts-debian-fixup

index 9963a46370b08303ba204cb151a7a161d3b7fe3b..a91f2562ae1cfebd532ca028ed98cfa15e3b986f 100755 (executable)
@@ -309,6 +309,17 @@ test_matrix_do_one () {
   *)               test_xend=n ;;
   esac
 
+  # PVH tests for versions >= 4.5 only
+  case "$xenbranch" in
+  xen-3.*-testing) test_pvh=n ;;
+  xen-4.0-testing) test_pvh=n ;;
+  xen-4.1-testing) test_pvh=n ;;
+  xen-4.2-testing) test_pvh=n ;;
+  xen-4.3-testing) test_pvh=n ;;
+  xen-4.4-testing) test_pvh=n ;;
+  *)               test_pvh=y ;;
+  esac
+
   do_rumpkernel_tests
 
   # xend PV guest test on x86 only
@@ -364,6 +375,18 @@ test_matrix_do_one () {
 
   fi
 
+  if [ x$test_pvh = xy -a $xenarch = amd64 -a $dom0arch = amd64 ]; then
+
+    for cpuvendor in amd intel; do
+
+      job_create_test test-$xenarch$kern-$dom0arch-xl-pvh-$cpuvendor \
+                test-debian xl $xenarch $dom0arch \
+                debian_pvh=1 $debian_runvars \
+                all_hostflags=$most_hostflags,hvm-$cpuvendor
+
+    done
+
+  fi
   do_passthrough_tests
 }
 
index f00141858774a26aafa7d7053b8bb2a0b76ceae0..b56050113e1a2b0bdd982206788784a1be3e3657 100755 (executable)
@@ -118,6 +118,12 @@ sub otherfixupcfg () {
     $cfg =~ s/^vcpus.*//mg;
     $cfg .= "\nvcpus = $vcpus\n";
 
+    my $pvh = guest_var($gho,'pvh',undef);
+    if ($pvh) {
+       $cfg =~ s/^pvh\b.*//mg;
+       $cfg .= "\npvh=$pvh\n";
+    }
+
     # PCI passthrough
     # Look for runvars   <gn>_pcipassthrough_<devtype>=<hostident>
     # and pass through all matching devices from the specified host.