summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@gmail.com>2022-07-08 15:05:23 -0400
committerKent Overstreet <kent.overstreet@gmail.com>2022-07-08 15:20:06 -0400
commit3ad258eccc97a7aeb1b72fa7b925ae7878664005 (patch)
treea13fc53bbfe8d4fa3234d5c7a79ce9de4ff64789
parent29b4d29449e4f13528ba6ee15662f057dc1c46bc (diff)
Fix multiple includes of prelude.sh
Signed-off-by: Kent Overstreet <kent.overstreet@gmail.com>
-rwxr-xr-xbuild-test-kernel2
-rw-r--r--lib/common.sh61
-rw-r--r--lib/libktest.sh5
-rw-r--r--lib/parse-test.sh2
-rwxr-xr-xlib/testrunner3
-rw-r--r--lib/util.sh15
-rwxr-xr-xtests/bcachefs/32bit.ktest6
-rwxr-xr-xtests/bcachefs/xfstests.ktest2
-rw-r--r--tests/prelude.sh35
9 files changed, 66 insertions, 65 deletions
diff --git a/build-test-kernel b/build-test-kernel
index 32c8164..4d96f0c 100755
--- a/build-test-kernel
+++ b/build-test-kernel
@@ -168,6 +168,8 @@ build_kernel()
new_config
+ log_verbose "kernel_config_require: ${ktest_kernel_config_require[@]}"
+
for opt in "${ktest_kernel_config_require[@]}"; do
[[ -n $opt ]] && kernel_opt set "$opt"
done
diff --git a/lib/common.sh b/lib/common.sh
index 9a70d07..3322375 100644
--- a/lib/common.sh
+++ b/lib/common.sh
@@ -158,51 +158,34 @@ parse_arch()
checkdep()
{
- local dep=$1
- local package=$dep
+ local dep=$1
+ local package=$dep
- if [[ $# -ge 2 ]]; then
- package=$2
- else
- package=$dep
- fi
+ if [[ $# -ge 2 ]]; then
+ package=$2
+ else
+ package=$dep
+ fi
- local found=0
+ local found=0
- if [[ ${dep:0:1} = / ]]; then
- # absolute path
- [[ -e $dep ]] && found=1
- else
- which "$dep" > /dev/null 2>&1 && found=1
- fi
+ if [[ ${dep:0:1} = / ]]; then
+ # absolute path
+ [[ -e $dep ]] && found=1
+ else
+ which "$dep" > /dev/null 2>&1 && found=1
+ fi
- if [[ $found = 0 ]]; then
- echo -n "$dep not found"
+ if [[ $found = 0 ]]; then
+ echo -n "$dep not found"
- if which apt-get > /dev/null 2>&1 && \
- which sudo > /dev/null 2>&1; then
- echo ", installing $package:"
- sudo apt-get -qq install --no-install-recommends "$package"
+ if which apt-get > /dev/null 2>&1 && \
+ which sudo > /dev/null 2>&1; then
+ echo ", installing $package:"
+ sudo apt-get -qq install --no-install-recommends "$package"
else
- echo ", please install"
- exit 1
- fi
- fi
-}
-
-checkdep_arch()
-{
- checkdep $QEMU_BIN $QEMU_PACKAGE
-
- if [[ -z $ktest_root_image ]]; then
- if [[ -f $HOME/.ktest/root.$DEBIAN_ARCH ]]; then
- ktest_root_image="$HOME/.ktest/root.$DEBIAN_ARCH"
- elif [[ -f /var/lib/ktest/root.$DEBIAN_ARCH ]]; then
- ktest_root_image=/var/lib/ktest/root.$DEBIAN_ARCH
- else
- echo "Root image not found in $HOME/.ktest/root.$DEBIAN_ARCH or /var/lib/ktest/root.$DEBIAN_ARCH"
- echo "Use $ktest_dir/root_image create"
- exit 1
+ echo ", please install"
+ exit 1
fi
fi
}
diff --git a/lib/libktest.sh b/lib/libktest.sh
index 5a08a26..13e086e 100644
--- a/lib/libktest.sh
+++ b/lib/libktest.sh
@@ -88,7 +88,6 @@ parse_ktest_arg()
parse_args_post()
{
parse_arch "$ktest_arch"
- checkdep_arch
ktest_out=$(readlink -f "$ktest_out")
ktest_kernel_binary="$ktest_out/kernel.$ktest_arch"
@@ -259,6 +258,10 @@ get_unused_port()
start_vm()
{
+ checkdep_arch
+
+ log_verbose "ktest_arch=$ktest_arch"
+
make -C "$ktest_dir/lib" qemu-wrapper
if [[ -z $ktest_kernel_binary ]]; then
diff --git a/lib/parse-test.sh b/lib/parse-test.sh
index c1f374a..d74e2c5 100644
--- a/lib/parse-test.sh
+++ b/lib/parse-test.sh
@@ -5,6 +5,8 @@ parse_test_deps()
eval $("$ktest_test" deps)
+ parse_arch "$ktest_arch"
+
if [ -z "$ktest_mem" ]; then
echo "test must specify config-mem"
exit 1
diff --git a/lib/testrunner b/lib/testrunner
index 251f943..5cd497a 100755
--- a/lib/testrunner
+++ b/lib/testrunner
@@ -22,9 +22,6 @@ ln -sf $ktest_dir /ktest
ln -sf $ktest_out /ktest-out
ln -sf /host/$home $home
-. "$ktest_dir/lib/util.sh"
-. "$ktest_dir/lib/parse-test.sh"
-
ktest_no_cleanup_tmpdir=1
log_verbose "Testrunner starting"
diff --git a/lib/util.sh b/lib/util.sh
index 6e1d99a..ac09a4e 100644
--- a/lib/util.sh
+++ b/lib/util.sh
@@ -23,3 +23,18 @@ get_tmpdir()
ktest_tmp=$(mktemp --tmpdir -d $(basename "$0")-XXXXXXXXXX)
fi
}
+
+checkdep_arch()
+{
+ if [[ -z $ktest_root_image ]]; then
+ if [[ -f $HOME/.ktest/root.$DEBIAN_ARCH ]]; then
+ ktest_root_image="$HOME/.ktest/root.$DEBIAN_ARCH"
+ elif [[ -f /var/lib/ktest/root.$DEBIAN_ARCH ]]; then
+ ktest_root_image=/var/lib/ktest/root.$DEBIAN_ARCH
+ else
+ echo "Root image not found in $HOME/.ktest/root.$DEBIAN_ARCH or /var/lib/ktest/root.$DEBIAN_ARCH"
+ echo "Use $ktest_dir/root_image create"
+ exit 1
+ fi
+ fi
+}
diff --git a/tests/bcachefs/32bit.ktest b/tests/bcachefs/32bit.ktest
index 044b2e7..6b44021 100755
--- a/tests/bcachefs/32bit.ktest
+++ b/tests/bcachefs/32bit.ktest
@@ -1,13 +1,9 @@
#!/bin/bash
-# Note: create-vm-image doesn't create a vm with a 32 bit userland, so we're not
-# going to be able to run much with this kernel - this is really just for
-# checking if it builds
+ktest_arch=x86
. $(dirname $(readlink -e ${BASH_SOURCE[0]}))/bcachefs-test-libs.sh
-config-arch x86
-
config-timeout 30
test_boot()
diff --git a/tests/bcachefs/xfstests.ktest b/tests/bcachefs/xfstests.ktest
index 2b2531d..51b9aa7 100755
--- a/tests/bcachefs/xfstests.ktest
+++ b/tests/bcachefs/xfstests.ktest
@@ -10,7 +10,7 @@ require-git http://evilpiepirate.org/git/xfstests.git ../xfstests
. $(dirname $(readlink -e "${BASH_SOURCE[0]}"))/../xfstests.sh
require-kernel-config BCACHEFS_POSIX_ACL
-require-kernel-config BCACHEFS_QUOTA=y
+require-kernel-config BCACHEFS_QUOTA
require-kernel-config QUOTA
config-cpus 24
diff --git a/tests/prelude.sh b/tests/prelude.sh
index a521abb..b8662ec 100644
--- a/tests/prelude.sh
+++ b/tests/prelude.sh
@@ -4,18 +4,21 @@
trap 'echo "Error $? from: $BASH_COMMAND, exiting" >&2' ERR
-ktest_cpus=$(nproc)
-ktest_mem=""
-ktest_timeout=""
-ktest_kernel_append=()
-ktest_images=()
-ktest_scratch_devs=()
-ktest_make_install=()
-ktest_kernel_config_require=()
-ktest_qemu_append=()
-
-NEXT_SCRATCH_DEV="b"
-BUILD_ON_HOST=""
+if [[ ! -v ktest_verbose ]]; then
+ ktest_verbose=0
+ ktest_cpus=$(nproc)
+ ktest_mem=""
+ ktest_timeout=""
+ ktest_kernel_append=()
+ ktest_images=()
+ ktest_scratch_devs=()
+ ktest_make_install=()
+ ktest_kernel_config_require=()
+ ktest_qemu_append=()
+
+ NEXT_SCRATCH_DEV="b"
+ BUILD_ON_HOST=""
+fi
require-git()
{
@@ -111,7 +114,7 @@ require-qemu-append()
require-kernel-append()
{
- ktest_kernel_append+=($1)
+ ktest_kernel_append+=("$1")
}
config-scratch-devs()
@@ -150,8 +153,7 @@ config-timeout()
config-arch()
{
- parse_arch "$1"
- checkdep_arch
+ ktest_arch=$1
}
set_watchdog()
@@ -243,10 +245,11 @@ main()
case $arg in
deps)
+ echo "ktest_arch=$ktest_arch"
echo "ktest_cpus=$ktest_cpus"
echo "ktest_mem=$ktest_mem"
echo "ktest_timeout=$ktest_timeout"
- echo "ktest_kernel_append=${ktest_kernel_append[@]}"
+ echo "ktest_kernel_append=(${ktest_kernel_append[@]})"
echo "ktest_images=(${ktest_images[@]})"
echo "ktest_scratch_devs=(${ktest_scratch_devs[@]})"
echo "ktest_make_install=(${ktest_make_install[@]})"