From: Konrad Rzeszutek Wilk <konrad@kernel.org>
To: Ian Jackson <ian.jackson@eu.citrix.com>
Cc: xen-devel@lists.xenproject.org, Marcos.Matsunaga@oracle.com,
ross.lagerwall@citrix.com
Subject: Re: [PATCH v2 6/9] ts-xen-build: Build the livepatch test-cases
Date: Thu, 18 May 2017 02:49:28 -0400 [thread overview]
Message-ID: <20170518064925.GA28013@osstest.dumpdata.com> (raw)
In-Reply-To: <22608.9877.805751.831868@mariner.uk.xensource.com>
[-- Attachment #1: Type: text/plain, Size: 233 bytes --]
> or something ?
I ended up doing two patches - one to create an enable_livepatch
(in mfi-common) to seed the jobs.
And then another to piggyback on that.
I am attaching them here (as attachment), and I think it makes
it simpler?
[-- Attachment #2: 0003-mfi-common-Add-an-livepatch-test-and-also-add-job_cr.patch --]
[-- Type: text/x-diff, Size: 2998 bytes --]
>From 1a303fe8acb3949eb556673744bc5bc89a842b54 Mon Sep 17 00:00:00 2001
From: Konrad Rzeszutek Wilk <konrad@kernel.org>
Date: Wed, 17 May 2017 20:54:07 -0400
Subject: [PATCH v3 3/7] mfi-common: Add an livepatch test and also add
job_create_build var.
The enable_livepatch=[true|false] is added to the jobs.
It should only be enabled for certain Xen versions (4.9)
and higher.
Signed-off-by: Konrad Rzeszutek Wilk <konrad@kernel.org>
---
v3: New patch
---
mfi-common | 28 +++++++++++++++++++++++++---
1 file changed, 25 insertions(+), 3 deletions(-)
diff --git a/mfi-common b/mfi-common
index ec31e2e..8cc9e5f 100644
--- a/mfi-common
+++ b/mfi-common
@@ -76,6 +76,24 @@ branch_wants_xtf_tests () {
esac
}
+branch_wants_livepatch () {
+ echo $branch
+ case "$branch" in
+ osstest*) return 0;;
+ xen-3.*) return 0;;
+ xen-4.0*) return 0;;
+ xen-4.1*) return 0;;
+ xen-4.2*) return 0;;
+ xen-4.3*) return 0;;
+ xen-4.4*) return 0;;
+ xen-4.5*) return 0;;
+ xen-4.6*) return 0;;
+ xen-4.7*) return 0;;
+ livepatch*) return 0;;
+ *) return 1;;
+ esac
+}
+
job_create_build () {
job_create_build_filter_callback "$@" || return 0
@@ -104,6 +122,7 @@ create_build_jobs () {
local want_xend build_defxend build_extraxend
local enable_ovmf
local build_hostflags
+ local enable_livepatch
if [ "x$BUILD_LVEXTEND_MAX" != x ]; then
BUILD_RUNVARS+=" build_lvextend_max=$BUILD_LVEXTEND_MAX "
@@ -196,7 +215,10 @@ create_build_jobs () {
want_prevxen=y
fi
fi
-
+ enable_livepatch=false
+ if ! branch_wants_livepatch; then
+ enable_livepatch=true
+ fi
eval "
arch_runvars=\"\$ARCH_RUNVARS_$arch\"
"
@@ -211,7 +233,7 @@ create_build_jobs () {
fi
job_create_build build-$arch$xsm_suffix build \
arch=$arch enable_xend=$build_defxend enable_ovmf=$enable_ovmf\
- enable_xsm=$enable_xsm \
+ enable_xsm=$enable_xsm enable_livepatch=$enable_livepatch \
tree_qemu=$TREE_QEMU \
tree_qemuu=$TREE_QEMU_UPSTREAM \
tree_xen=$TREE_XEN \
@@ -239,7 +261,7 @@ create_build_jobs () {
# $REVISION_PREVXEN.
job_create_build build-$arch-prev build \
arch=$arch enable_xend=false enable_ovmf=$enable_prevovmf\
- enable_xsm=false \
+ enable_xsm=false enable_livepatch=$enable_livepatch \
tree_xen=$TREE_XEN \
$RUNVARS $BUILD_RUNVARS $BUILD_XEN_RUNVARS $arch_runvars \
$hostos_runvars \
--
2.1.4
[-- Attachment #3: 0004-ts-xen-build-Build-livepatches-test-cases.patch --]
[-- Type: text/x-diff, Size: 2446 bytes --]
>From e7d697d4812ea22171fc738435c640adb5df1363 Mon Sep 17 00:00:00 2001
From: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
Date: Mon, 21 Nov 2016 17:11:13 -0500
Subject: [PATCH v3 4/7] ts-xen-build: Build livepatches test-cases
Livepatch compiles and works on x86/ARM{32|64} so we can
enable it. It only gets built and put in xentlpdist.tar.gz
if enable_livepatch is set to true.
Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
---
v1: New posting
v2: Put the livepatch test-cases in xentlpdist.tar.gz file
v3: Use enable_livepatch to gate the build and tarring the test-cases.
---
ts-xen-build | 20 ++++++++++++++++++++
1 file changed, 20 insertions(+)
diff --git a/ts-xen-build b/ts-xen-build
index 31acb9d..92f467b 100755
--- a/ts-xen-build
+++ b/ts-xen-build
@@ -51,6 +51,7 @@ $dashdashdash //= -1;
builddirsprops();
my $enable_xsm = ($r{enable_xsm}//'false') =~ m/true/ ? 1 : 0;
+my $enable_livepatch = ($r{enable_livepatch}//'false') =~ m/true/ ? 1 : 0;
$buildcmd_global_prefix= <<END;
export XEN_CONFIG_EXPERT=y
@@ -95,6 +96,12 @@ sub checkout () {
echo >>.config LIBLEAFDIR_x86_64=lib
echo >>.config KERNELS=''
END
+ (${enable_livepatch} ? <<END : '').
+ if test -f xen/Kconfig; then
+ echo >>xen/.config CONFIG_LIVEPATCH=y
+ echo >>xen/.config CONFIG_FAST_SYMBOL_LOOKUP=y
+ fi
+END
(nonempty($r{enable_xsm}) ? <<END : '').
if test -f xen/Kconfig; then
echo >>xen/.config CONFIG_XSM='${build_xsm}'
@@ -164,6 +171,18 @@ END
END
store_runvar("flaskpolicy", "xenpolicy-" . $xen_version);
}
+
+ if ($enable_livepatch) {
+ buildcmd_stamped_logged(600, 'xen', 'xenlpt', <<END,<<END,'')
+ export XEN_ROOT=$builddir/xen
+ export DESTDIR=$builddir/xen/dist/xenlpt
+ export BASEDIR=$builddir/xen/xen
+ mkdir -p \${DESTDIR}/usr/lib/debug
+END
+ $make_prefix make -C xen/test -f $builddir/xen/xen/Rules.mk install
+END
+
+ }
}
sub divide () {
@@ -209,6 +228,7 @@ sub stash () {
"xen/dist/${part}install",
"${part}dist");
}
+ built_stash($ho, $builddir, "xen/dist/xenlpt", "xenlptdist") if $enable_livepatch;
built_stash_file($ho, $builddir, "xen-syms", "xen/xen/xen-syms", 1);
built_stash_file($ho, $builddir, "xen-config", "xen/.config", 1);
built_stash_file($ho, $builddir, "xen-hv-config", "xen/xen/.config", 1);
--
2.1.4
[-- Attachment #4: Type: text/plain, Size: 127 bytes --]
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel
next prev parent reply other threads:[~2017-05-18 2:39 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-12-13 6:39 [PATCH v2] OSSTest test-harness for livepatches Konrad Rzeszutek Wilk
2016-12-13 6:39 ` [PATCH v2 1/9] OssTest: Add target_cmd_root_status which returns return code Konrad Rzeszutek Wilk
2016-12-13 16:20 ` Ian Jackson
2016-12-13 6:39 ` [PATCH v2 2/9] Osstest: Add target_cmd_output_root_status Konrad Rzeszutek Wilk
2016-12-13 16:23 ` Ian Jackson
2016-12-13 6:39 ` [PATCH v2 3/9] OssTest: Add target_dir_exists Konrad Rzeszutek Wilk
2016-12-13 16:24 ` Ian Jackson
2017-05-17 20:59 ` Konrad Rzeszutek Wilk
2017-05-18 16:50 ` Ian Jackson
2016-12-13 6:39 ` [PATCH v2 4/9] ts-xen-build: Make {xen|}dist.tar.gz only if $builddir/install/{$xen|}install Konrad Rzeszutek Wilk
2016-12-13 6:39 ` [PATCH v2 5/9] ts-xen-build: Enable livepatch Konrad Rzeszutek Wilk
2016-12-13 6:39 ` [PATCH v2 6/9] ts-xen-build: Build the livepatch test-cases Konrad Rzeszutek Wilk
2016-12-13 16:49 ` Ian Jackson
2017-05-18 0:07 ` Konrad Rzeszutek Wilk
2017-05-17 20:30 ` Konrad Rzeszutek Wilk
2017-05-18 16:41 ` Ian Jackson
2017-05-18 6:49 ` Konrad Rzeszutek Wilk [this message]
2017-05-18 16:47 ` Ian Jackson
2017-05-18 19:57 ` Konrad Rzeszutek Wilk
2016-12-13 6:39 ` [PATCH v2 7/9] ts-livepatch-[install|run]: Install and initial test-cases Konrad Rzeszutek Wilk
2016-12-13 17:08 ` Ian Jackson
2016-12-13 6:39 ` [PATCH v2 8/9] sg-run-job: Add the test-livepatch Konrad Rzeszutek Wilk
2016-12-13 17:08 ` Ian Jackson
2016-12-13 6:39 ` [PATCH v2 9/9] make-flight/mfi-common: Add livepatch build/test target in the matrix Konrad Rzeszutek Wilk
2016-12-13 16:14 ` Wei Liu
2016-12-13 16:44 ` Ian Jackson
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20170518064925.GA28013@osstest.dumpdata.com \
--to=konrad@kernel.org \
--cc=Marcos.Matsunaga@oracle.com \
--cc=ian.jackson@eu.citrix.com \
--cc=ross.lagerwall@citrix.com \
--cc=xen-devel@lists.xenproject.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).