[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [OSSTEST PATCH 09/16] rump kernels: Provide networking test



Introduce our own version of `nc -e echo', to replace the removed rump
kernel WOPR test (which we were using to check that networking
worked).

This test program works when compiled on Linux too.

Signed-off-by: Ian Jackson <Ian.Jackson@xxxxxxxxxxxxx>
---
 make-flight           |  4 ++--
 sg-run-job            |  6 +++++
 ts-rumprun-demo-build | 66 +++++++++++++++++++++++++++++++++++++++++++++++++++
 3 files changed, 74 insertions(+), 2 deletions(-)
 create mode 100755 ts-rumprun-demo-build

diff --git a/make-flight b/make-flight
index 9b47999..17c3ce1 100755
--- a/make-flight
+++ b/make-flight
@@ -219,8 +219,8 @@ do_rumpkernel_tests () {
                       test-rumprun xl \
             $xenarch $dom0arch                                       \
             guests_rumprunbuildjob=build-$rumparch-rumprun   \
-     rump_builtimage=rumprun:/usr/local/lib/xen/rump-kernel/rump-kernel \
-            rump_cmdline=3                                           \
+            nettest_builtimage=rumpimages:nettest \
+            nettest_cmdline=4096 \
             xenstorels_builtimage=rumpimages:xenstorels              \
             xenstorels_cmdline='ls -fp device'                       \
             all_hostflags=$most_hostflags
diff --git a/sg-run-job b/sg-run-job
index e4e4e75..967c486 100755
--- a/sg-run-job
+++ b/sg-run-job
@@ -460,6 +460,10 @@ proc test-guest-nomigr {g} {
 
 proc need-hosts/test-rumprun {} { return host }
 proc run-job/test-rumprun {} {
+    set g nettest
+    run-ts . =   ts-rumprun-demo-setup + host $g
+    run-ts . =   ts-guest-start            + host $g
+    run-ts . =   ts-guest-destroy          + host $g
     set g xenstorels
     run-ts . =   ts-rumprun-demo-setup      + host + $g
     run-ts . =   ts-rumprun-demo-xenstorels + host + $g
@@ -495,8 +499,10 @@ proc run-job/build-libvirt {} {
 
 proc run-job/build-rumprun {} {
     run-ts . = ts-rumprun-build
+    run-ts . = ts-rumprun-demo-build + host + nettest rump-test-net
     run-ts . = ts-xen-build + host --no-kconfig tools
     run-ts . = ts-rumprun-bake + host \
+        nettest :nettest:/rump-test-net \
         xenstorels ::/usr/local/bin/xenstore-ls
 }
 
diff --git a/ts-rumprun-demo-build b/ts-rumprun-demo-build
new file mode 100755
index 0000000..c653d5b
--- /dev/null
+++ b/ts-rumprun-demo-build
@@ -0,0 +1,66 @@
+#!/usr/bin/perl -w
+# This is part of "osstest", an automated testing framework for Xen.
+# Copyright (C) 2009-2013 Citrix Inc.
+# 
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU Affero General Public License as published by
+# the Free Software Foundation, either version 3 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU Affero General Public License for more details.
+# 
+# You should have received a copy of the GNU Affero General Public License
+# along with this program.  If not, see <http://www.gnu.org/licenses/>.
+
+use strict qw(vars);
+use DBI;
+use Osstest;
+use File::Path;
+use POSIX;
+use Osstest::TestSupport;
+use Osstest::BuildSupport;
+
+tsreadconfig();
+selectbuildhost(\@ARGV);
+
+our $dokconfig = 1;
+
+while (@ARGV && $ARGV[0] =~ m/^-/) {
+    $_ = shift @ARGV;
+    last if m/^--$/;
+    die "$_ ?";
+}
+# remaining arguments are passed as targets to "make"
+
+die unless @ARGV==2;
+my ($demo,$bn) = @ARGV;
+
+builddirsprops();
+
+my $demodir;
+
+sub build () {
+    prepbuilddirs($demo);
+
+    $demodir = "$builddir/$demo";
+
+    target_putfile($ho, 30, "$bn.c", "$demodir/$bn.c");
+
+    my $make_prefix =      $r{cmdprefix_make}      // '';
+
+    target_cmd_build($ho, 300, $demodir, <<END);
+        set -x
+        $make_prefix
+        \${CROSS_COMPILE}gcc -Wall -o $bn $bn.c
+END
+}
+
+sub stash () {
+    built_stash($ho, $builddir, "$demo", "${demo}dist");
+}
+
+build();
+stash();
-- 
2.1.4


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.