diff options
Diffstat (limited to 'debian/tests')
-rw-r--r-- | debian/tests/control | 276 | ||||
-rwxr-xr-x[-rw-r--r--] | debian/tests/headers-kbuild (renamed from debian/tests/kbuild) | 22 | ||||
-rw-r--r-- | debian/tests/selftests | 88 |
3 files changed, 273 insertions, 113 deletions
diff --git a/debian/tests/control b/debian/tests/control index b93e4e5bfd..4428e8257f 100644 --- a/debian/tests/control +++ b/debian/tests/control @@ -2,13 +2,273 @@ Test-Command: py.test debian/lib/python Restrictions: superficial Depends: python3-pytest, python3-jinja2 -Tests: selftests -Restrictions: breaks-testbed, needs-root, isolation-machine -Depends: kexec-tools, python3, gcc, make, libpopt-dev, gcc-multilib [amd64], bc, fuse, libfuse-dev, pkg-config, linux-image-6.6.15-alpha-generic [alpha], linux-image-6.6.15-alpha-smp [alpha], linux-image-6.6.15-amd64-unsigned [amd64], linux-image-6.6.15-cloud-amd64-unsigned [amd64], linux-image-6.6.15-rt-amd64-unsigned [amd64], linux-image-6.6.15-arm64-unsigned [arm64], linux-image-6.6.15-cloud-arm64-unsigned [arm64], linux-image-6.6.15-rt-arm64-unsigned [arm64], linux-image-6.6.15-rpi [armel], linux-image-6.6.15-armmp [armhf], linux-image-6.6.15-armmp-lpae [armhf], linux-image-6.6.15-rt-armmp [armhf], linux-image-6.6.15-parisc [hppa], linux-image-6.6.15-parisc64 [hppa], linux-image-6.6.15-686 [i386], linux-image-6.6.15-686-pae [i386], linux-image-6.6.15-rt-686-pae [i386], linux-image-6.6.15-itanium [ia64], linux-image-6.6.15-mckinley [ia64], linux-image-6.6.15-m68k [m68k], linux-image-6.6.15-4kc-malta [mips mipsel], linux-image-6.6.15-mips32r2eb [mips], linux-image-6.6.15-octeon [mips mips64 mips64el mipsel], linux-image-6.6.15-5kc-malta [mips64 mips64el], linux-image-6.6.15-mips64r2eb [mips64], linux-image-6.6.15-mips64r2el [mips64el], linux-image-6.6.15-loongson-3 [mips64el mipsel], linux-image-6.6.15-mips64r6el [mips64r6el], linux-image-6.6.15-mips32r2el [mipsel], linux-image-6.6.15-powerpc [powerpc], linux-image-6.6.15-powerpc-smp [powerpc], linux-image-6.6.15-powerpc64 [powerpc ppc64], linux-image-6.6.15-powerpc64le [ppc64el], linux-image-6.6.15-riscv64 [riscv64], linux-image-6.6.15-s390x [s390x], linux-image-6.6.15-sh7751r [sh4], linux-image-6.6.15-sh7785lcr [sh4], linux-image-6.6.15-sparc64 [sparc64], linux-image-6.6.15-sparc64-smp [sparc64] -Classes: smp +Test-Command: debian/tests/headers-kbuild 6.7.7-alpha-generic +Architecture: alpha +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-alpha-generic +Depends: linux-headers-6.7.7-alpha-generic, linux-image-6.7.7-alpha-generic -Tests: kbuild -Architecture: alpha amd64 arm64 armhf hppa i386 ia64 m68k ppc64 ppc64el riscv64 s390x sparc64 -Restrictions: superficial -Depends: python3, linux-headers-6.6.15-alpha-smp [alpha], linux-headers-6.6.15-cloud-amd64 [amd64], linux-headers-6.6.15-cloud-arm64 [arm64], linux-headers-6.6.15-armmp [armhf], linux-headers-6.6.15-parisc [hppa], linux-headers-6.6.15-686-pae [i386], linux-headers-6.6.15-itanium [ia64], linux-headers-6.6.15-m68k [m68k], linux-headers-6.6.15-powerpc64 [ppc64], linux-headers-6.6.15-powerpc64le [ppc64el], linux-headers-6.6.15-riscv64 [riscv64], linux-headers-6.6.15-s390x [s390x], linux-headers-6.6.15-sparc64-smp [sparc64] +Test-Command: debian/tests/headers-kbuild 6.7.7-alpha-smp +Architecture: alpha +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-alpha-smp +Depends: linux-headers-6.7.7-alpha-smp, linux-image-6.7.7-alpha-smp + +Test-Command: debian/tests/headers-kbuild 6.7.7-amd64 +Architecture: amd64 +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-amd64 +Depends: linux-headers-6.7.7-amd64, linux-image-6.7.7-amd64-unsigned + +Test-Command: debian/tests/headers-kbuild 6.7.7-cloud-amd64 +Architecture: amd64 +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-cloud-amd64 +Depends: linux-headers-6.7.7-cloud-amd64, linux-image-6.7.7-cloud-amd64-unsigned + +Test-Command: debian/tests/headers-kbuild 6.7.7-rt-amd64 +Architecture: amd64 +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-rt-amd64 +Depends: linux-headers-6.7.7-rt-amd64, linux-image-6.7.7-rt-amd64-unsigned + +Test-Command: debian/tests/headers-kbuild 6.7.7-arm64 +Architecture: arm64 +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-arm64 +Depends: linux-headers-6.7.7-arm64, linux-image-6.7.7-arm64-unsigned + +Test-Command: debian/tests/headers-kbuild 6.7.7-cloud-arm64 +Architecture: arm64 +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-cloud-arm64 +Depends: linux-headers-6.7.7-cloud-arm64, linux-image-6.7.7-cloud-arm64-unsigned + +Test-Command: debian/tests/headers-kbuild 6.7.7-rt-arm64 +Architecture: arm64 +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-rt-arm64 +Depends: linux-headers-6.7.7-rt-arm64, linux-image-6.7.7-rt-arm64-unsigned + +Test-Command: debian/tests/headers-kbuild 6.7.7-rpi +Architecture: armel +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-rpi +Depends: linux-headers-6.7.7-rpi, linux-image-6.7.7-rpi + +Test-Command: debian/tests/headers-kbuild 6.7.7-armmp +Architecture: armhf +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-armmp +Depends: linux-headers-6.7.7-armmp, linux-image-6.7.7-armmp + +Test-Command: debian/tests/headers-kbuild 6.7.7-armmp-lpae +Architecture: armhf +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-armmp-lpae +Depends: linux-headers-6.7.7-armmp-lpae, linux-image-6.7.7-armmp-lpae + +Test-Command: debian/tests/headers-kbuild 6.7.7-rt-armmp +Architecture: armhf +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-rt-armmp +Depends: linux-headers-6.7.7-rt-armmp, linux-image-6.7.7-rt-armmp + +Test-Command: debian/tests/headers-kbuild 6.7.7-parisc +Architecture: hppa +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-parisc +Depends: linux-headers-6.7.7-parisc, linux-image-6.7.7-parisc + +Test-Command: debian/tests/headers-kbuild 6.7.7-parisc64 +Architecture: hppa +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-parisc64 +Depends: linux-headers-6.7.7-parisc64, linux-image-6.7.7-parisc64 + +Test-Command: debian/tests/headers-kbuild 6.7.7-686 +Architecture: i386 +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-686 +Depends: linux-headers-6.7.7-686, linux-image-6.7.7-686 + +Test-Command: debian/tests/headers-kbuild 6.7.7-686-pae +Architecture: i386 +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-686-pae +Depends: linux-headers-6.7.7-686-pae, linux-image-6.7.7-686-pae + +Test-Command: debian/tests/headers-kbuild 6.7.7-rt-686-pae +Architecture: i386 +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-rt-686-pae +Depends: linux-headers-6.7.7-rt-686-pae, linux-image-6.7.7-rt-686-pae + +Test-Command: debian/tests/headers-kbuild 6.7.7-loong64 +Architecture: loong64 +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-loong64 +Depends: linux-headers-6.7.7-loong64, linux-image-6.7.7-loong64 + +Test-Command: debian/tests/headers-kbuild 6.7.7-m68k +Architecture: m68k +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-m68k +Depends: linux-headers-6.7.7-m68k, linux-image-6.7.7-m68k + +Test-Command: debian/tests/headers-kbuild 6.7.7-4kc-malta +Architecture: mips +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-4kc-malta +Depends: linux-headers-6.7.7-4kc-malta, linux-image-6.7.7-4kc-malta + +Test-Command: debian/tests/headers-kbuild 6.7.7-mips32r2eb +Architecture: mips +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-mips32r2eb +Depends: linux-headers-6.7.7-mips32r2eb, linux-image-6.7.7-mips32r2eb + +Test-Command: debian/tests/headers-kbuild 6.7.7-octeon +Architecture: mips +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-octeon +Depends: linux-headers-6.7.7-octeon, linux-image-6.7.7-octeon + +Test-Command: debian/tests/headers-kbuild 6.7.7-5kc-malta +Architecture: mips64 +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-5kc-malta +Depends: linux-headers-6.7.7-5kc-malta, linux-image-6.7.7-5kc-malta + +Test-Command: debian/tests/headers-kbuild 6.7.7-mips64r2eb +Architecture: mips64 +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-mips64r2eb +Depends: linux-headers-6.7.7-mips64r2eb, linux-image-6.7.7-mips64r2eb + +Test-Command: debian/tests/headers-kbuild 6.7.7-octeon +Architecture: mips64 +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-octeon +Depends: linux-headers-6.7.7-octeon, linux-image-6.7.7-octeon + +Test-Command: debian/tests/headers-kbuild 6.7.7-5kc-malta +Architecture: mips64el +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-5kc-malta +Depends: linux-headers-6.7.7-5kc-malta, linux-image-6.7.7-5kc-malta + +Test-Command: debian/tests/headers-kbuild 6.7.7-mips64r2el +Architecture: mips64el +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-mips64r2el +Depends: linux-headers-6.7.7-mips64r2el, linux-image-6.7.7-mips64r2el + +Test-Command: debian/tests/headers-kbuild 6.7.7-loongson-3 +Architecture: mips64el +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-loongson-3 +Depends: linux-headers-6.7.7-loongson-3, linux-image-6.7.7-loongson-3 + +Test-Command: debian/tests/headers-kbuild 6.7.7-octeon +Architecture: mips64el +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-octeon +Depends: linux-headers-6.7.7-octeon, linux-image-6.7.7-octeon + +Test-Command: debian/tests/headers-kbuild 6.7.7-mips64r6el +Architecture: mips64r6el +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-mips64r6el +Depends: linux-headers-6.7.7-mips64r6el, linux-image-6.7.7-mips64r6el + +Test-Command: debian/tests/headers-kbuild 6.7.7-4kc-malta +Architecture: mipsel +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-4kc-malta +Depends: linux-headers-6.7.7-4kc-malta, linux-image-6.7.7-4kc-malta + +Test-Command: debian/tests/headers-kbuild 6.7.7-mips32r2el +Architecture: mipsel +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-mips32r2el +Depends: linux-headers-6.7.7-mips32r2el, linux-image-6.7.7-mips32r2el + +Test-Command: debian/tests/headers-kbuild 6.7.7-loongson-3 +Architecture: mipsel +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-loongson-3 +Depends: linux-headers-6.7.7-loongson-3, linux-image-6.7.7-loongson-3 + +Test-Command: debian/tests/headers-kbuild 6.7.7-octeon +Architecture: mipsel +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-octeon +Depends: linux-headers-6.7.7-octeon, linux-image-6.7.7-octeon + +Test-Command: debian/tests/headers-kbuild 6.7.7-powerpc +Architecture: powerpc +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-powerpc +Depends: linux-headers-6.7.7-powerpc, linux-image-6.7.7-powerpc + +Test-Command: debian/tests/headers-kbuild 6.7.7-powerpc-smp +Architecture: powerpc +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-powerpc-smp +Depends: linux-headers-6.7.7-powerpc-smp, linux-image-6.7.7-powerpc-smp + +Test-Command: debian/tests/headers-kbuild 6.7.7-powerpc64 +Architecture: powerpc +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-powerpc64 +Depends: linux-headers-6.7.7-powerpc64, linux-image-6.7.7-powerpc64 + +Test-Command: debian/tests/headers-kbuild 6.7.7-powerpc64 +Architecture: ppc64 +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-powerpc64 +Depends: linux-headers-6.7.7-powerpc64, linux-image-6.7.7-powerpc64 + +Test-Command: debian/tests/headers-kbuild 6.7.7-powerpc64le +Architecture: ppc64el +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-powerpc64le +Depends: linux-headers-6.7.7-powerpc64le, linux-image-6.7.7-powerpc64le + +Test-Command: debian/tests/headers-kbuild 6.7.7-riscv64 +Architecture: riscv64 +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-riscv64 +Depends: linux-headers-6.7.7-riscv64, linux-image-6.7.7-riscv64 + +Test-Command: debian/tests/headers-kbuild 6.7.7-s390x +Architecture: s390x +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-s390x +Depends: linux-headers-6.7.7-s390x, linux-image-6.7.7-s390x + +Test-Command: debian/tests/headers-kbuild 6.7.7-sh7751r +Architecture: sh4 +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-sh7751r +Depends: linux-headers-6.7.7-sh7751r, linux-image-6.7.7-sh7751r + +Test-Command: debian/tests/headers-kbuild 6.7.7-sh7785lcr +Architecture: sh4 +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-sh7785lcr +Depends: linux-headers-6.7.7-sh7785lcr, linux-image-6.7.7-sh7785lcr + +Test-Command: debian/tests/headers-kbuild 6.7.7-sparc64 +Architecture: sparc64 +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-sparc64 +Depends: linux-headers-6.7.7-sparc64, linux-image-6.7.7-sparc64 + +Test-Command: debian/tests/headers-kbuild 6.7.7-sparc64-smp +Architecture: sparc64 +Restrictions: skip-not-installable, superficial +Features: test-name=headers-kbuild-sparc64-smp +Depends: linux-headers-6.7.7-sparc64-smp, linux-image-6.7.7-sparc64-smp diff --git a/debian/tests/kbuild b/debian/tests/headers-kbuild index 18cbe214e8..55681de015 100644..100755 --- a/debian/tests/kbuild +++ b/debian/tests/headers-kbuild @@ -1,5 +1,7 @@ #!/bin/sh -eu +KERNEL_RELEASE="$1" + mkdir "$AUTOPKGTEST_TMP"/foo cat >"$AUTOPKGTEST_TMP"/foo/foo.c <<EOF #include <linux/kernel.h> @@ -23,21 +25,7 @@ cat >"$AUTOPKGTEST_TMP"/foo/Kbuild <<EOF obj-m += foo.o EOF -arch="$(dpkg --print-architecture)" -abiname="$(debian/bin/getconfig.py version abiname)" -if flavour="$(debian/bin/getconfig.py base $arch none quick-flavour)"; then - echo "I: Found quick flavour $flavour" -elif flavour="$(debian/bin/getconfig.py base $arch none default-flavour)"; then - echo "I: Found default flavour $flavour" -elif flavour="$(debian/bin/getconfig.py base $arch default-flavour)"; then - echo "I: Found default flavour $flavour" -else - echo >&2 "E: Failed to find quick or default flavour" - exit 1 -fi -release="$abiname-$flavour" - -echo "I: Build for $release" +echo "I: Build for $KERNEL_RELEASE" # There are some warnings sent to stderr that we need to suppress, # but any other output to stderr should be treated as a failure. # We also want all stdout/stderr to appear in order in the log. @@ -45,7 +33,7 @@ echo "I: Build for $release" exec 3>&1 # Next, run the build with stdout sent to the original stdout and # stderr sent through tee to both the original stdout and a file -make -C /lib/modules/"$release"/build M="$AUTOPKGTEST_TMP"/foo V=1 \ +make -C /lib/modules/"$KERNEL_RELEASE"/build M="$AUTOPKGTEST_TMP"/foo V=1 \ 2>&1 1>&3 | tee "$AUTOPKGTEST_TMP"/foo/make.stderr # Close fd 3 exec 3>&- @@ -55,4 +43,4 @@ if grep -q -v -E 'Skipping BTF generation .* due to unavailability of vmlinux' " fi echo "I: Clean" -make -C /lib/modules/"$release"/build M="$AUTOPKGTEST_TMP"/foo V=1 clean +make -C /lib/modules/"$KERNEL_RELEASE"/build M="$AUTOPKGTEST_TMP"/foo V=1 clean diff --git a/debian/tests/selftests b/debian/tests/selftests deleted file mode 100644 index 02cc29372e..0000000000 --- a/debian/tests/selftests +++ /dev/null @@ -1,88 +0,0 @@ -#!/bin/bash -eu - -PATH=/usr/sbin:/sbin:/usr/bin:/bin - -getconfig() { - debian/bin/getconfig.py "$@" -} - -# Look up current ABI name and 'localversion' (featureset/flavour) suffixes -abiname=$(getconfig version abiname) -arch=$(dpkg --print-architecture) -localversion=() -for featureset in $(getconfig base $arch featuresets); do - if [ "$(getconfig base '' $featureset enabled || echo True)" = True ]; then - for flavour in $(getconfig base $arch $featureset flavours); do - if [ "$featureset" = none ]; then - localversion+=(-$flavour) - else - localversion+=(-$featureset-$flavour) - fi - done - fi -done -steps=${#localversion[*]} - -case "${ADT_REBOOT_MARK:-}" in - "") - step=-1 - ;; - step*) - step=${ADT_REBOOT_MARK#step} - ;; -esac - -if [ "$step" -ge 0 ]; then - ver=$abiname${localversion[$step]} - - if [ "$(uname -r)" != "$ver" ]; then - echo >&2 "Should be running: $ver" - echo >&2 "Actually running: $(uname -r)" - else - cp -lR . $AUTOPKGTEST_TMP/build - cd $AUTOPKGTEST_TMP/build - make headers_install - - # Ignore compiler warnings - { - make -C tools/testing/selftests && - make -C tools/testing/selftests/memfd build_fuse - } 2>&1 || echo >&2 "Build failed" - - # Enable testing CLONE_USERNS by unprivileged users - sysctl kernel.unprivileged_userns_clone=1 - - # Some tests will write to stderr despite being successful, - # and the exit code from make will be 0 even if tests failed. - # So we have to do some post-analysis... - set -o pipefail - { - make -C tools/testing/selftests quicktest=1 run_tests && - make -C tools/testing/selftests/cpu-hotplug run_full_test && - make -C tools/testing/selftests/memory-hotplug run_full_test && - make -C tools/testing/selftests/memfd run_fuse && - make -C tools/testing/selftests/timers run_destructive_tests - } 2>&1 | tee $AUTOPKGTEST_TMP/log - set +o pipefail - if grep -E '\[(FAIL|UNSUPPORTED)\]|recipe for target .run_tests. failed' $AUTOPKGTEST_TMP/log | \ - grep -q -v \ - -e '^selftests: fw_userhelper.sh \[FAIL\]' \ - -e 'ftrace - function profiler with function tracing \[UNSUPPORTED\]' \ - -e '^selftests: ftracetest \[FAIL\]' \ - -e '|| echo .*\[FAIL\]' \ - ; then - echo >&2 "Unexpected failures found" - fi - fi -fi - -step=$((step + 1)) - -if [ "$step" -lt "$steps" ]; then - # Load the next kernel - ver=$abiname${localversion[$step]} - kexec -l /boot/vmlinuz-$ver --initrd /boot/initrd.img-$ver --reuse-cmdline - /tmp/autopkgtest-reboot step$step -fi - -exit 0 |