diff options
-rw-r--r-- | tests/expected/losetup/losetup-blkdev-show (renamed from tests/expected/losetup/losetup-blkdev) | 0 | ||||
-rw-r--r-- | tests/expected/losetup/losetup-file-show (renamed from tests/expected/losetup/losetup-file) | 0 | ||||
-rw-r--r-- | tests/functions.sh | 20 | ||||
-rwxr-xr-x | tests/run.sh | 1 | ||||
-rwxr-xr-x | tests/ts/losetup/losetup | 64 | ||||
-rwxr-xr-x | tests/ts/losetup/losetup-blkdev | 80 | ||||
-rw-r--r-- | tests/ts/losetup/losetup_functions.sh | 7 | ||||
-rwxr-xr-x | tests/ts/schedutils/cpuset | 2 |
8 files changed, 106 insertions, 68 deletions
diff --git a/tests/expected/losetup/losetup-blkdev b/tests/expected/losetup/losetup-blkdev-show index 2afc15105..2afc15105 100644 --- a/tests/expected/losetup/losetup-blkdev +++ b/tests/expected/losetup/losetup-blkdev-show diff --git a/tests/expected/losetup/losetup-file b/tests/expected/losetup/losetup-file-show index 09d11473f..09d11473f 100644 --- a/tests/expected/losetup/losetup-file +++ b/tests/expected/losetup/losetup-file-show diff --git a/tests/functions.sh b/tests/functions.sh index 7232adf46..85f0e0fac 100644 --- a/tests/functions.sh +++ b/tests/functions.sh @@ -587,15 +587,23 @@ function ts_scsi_debug_init { local devname TS_DEVICE="none" - modprobe --dry-run --quiet scsi_debug &>/dev/null - [ "$?" == 0 ] || ts_skip "missing scsi_debug module" + # dry run is not realy reliable, real modprobe may still fail + modprobe --dry-run --quiet scsi_debug &>/dev/null \ + || ts_skip "missing scsi_debug module (dry-run)" - rmmod scsi_debug &> /dev/null - modprobe scsi_debug $* - [ "$?" == 0 ] || ts_die "Cannot init device" + # skip if still in use or removal of modules not supported at all + modprobe -r scsi_debug &>/dev/null \ + || ts_skip "cannot remove scsi_debug module (rmmod)" + + modprobe -b scsi_debug $* &>/dev/null \ + || ts_skip "cannot load scsi_debug module (modprobe)" + + # it might be still not loaded, modprobe.conf or whatever + lsmod | grep -q "^scsi_debug " \ + || ts_skip "scsi_debug module not loaded (lsmod)" devname=$(grep --with-filename scsi_debug /sys/block/*/device/model | awk -F '/' '{print $4}') - [ "x${devname}" == "x" ] && ts_die "Cannot find device" + [ "x${devname}" == "x" ] && ts_die "cannot find scsi_debug device" sleep 1 udevadm settle diff --git a/tests/run.sh b/tests/run.sh index 06ed5e384..1f2971aed 100755 --- a/tests/run.sh +++ b/tests/run.sh @@ -146,6 +146,7 @@ fi count=0 >| $top_builddir/tests/failures printf "%s\n" ${comps[*]} | + sort | xargs -I '{}' -P $paraller_jobs -n 1 bash -c "'{}' \"$OPTS\" || echo 1 >> $top_builddir/tests/failures" declare -a fail_file diff --git a/tests/ts/losetup/losetup b/tests/ts/losetup/losetup index 804518998..3c4fcb74f 100755 --- a/tests/ts/losetup/losetup +++ b/tests/ts/losetup/losetup @@ -34,24 +34,14 @@ rm -f $TS_OUTPUT ts_skip_nonroot ts_check_losetup - -# set global variable TS_DEVICE -ts_scsi_debug_init dev_size_mb=11 -REFILE=$(ts_image_init 10) - -function lo_print { - local lo=$1 - echo "offset: $( $TS_CMD_LOSETUP --list --raw -n -O OFFSET $lo )" - echo "sizelimit: $( $TS_CMD_LOSETUP --list --raw -n -O SIZELIMIT $lo )" - echo "size: $( $TS_CMD_LSBLK -o SIZE -b -n -r $lo )" -} +. "$TS_SELF/losetup_functions.sh" # # file-* tests: Backing file is a regular file # -BACKFILE="$REFILE" +BACKFILE=$(ts_image_init 10) -ts_init_subtest "file" +ts_init_subtest "file-show" LODEV=$( $TS_CMD_LOSETUP --find --show $BACKFILE ) if [ -z "$LODEV" ]; then ts_log "Failed to create loop device" @@ -91,54 +81,6 @@ ts_finalize_subtest rm -rf $BACKFILE -# -# Backing file is a block device -# -BACKFILE="$TS_DEVICE" - -ts_init_subtest "blkdev" -LODEV=$( $TS_CMD_LOSETUP --find --show $BACKFILE ) -if [ -z "$LODEV" ]; then - ts_log "Failed to create loop device" -fi -lo_print $LODEV >> $TS_OUTPUT -$TS_CMD_LOSETUP -d $LODEV -ts_finalize_subtest - -ts_init_subtest "blkdev-offset" -LODEV=$( $TS_CMD_LOSETUP --offset 1MiB --find --show $BACKFILE ) -if [ -z "$LODEV" ]; then - ts_log "Failed to create loop device" -fi -lo_print $LODEV >> $TS_OUTPUT -$TS_CMD_LOSETUP -d $LODEV -ts_finalize_subtest - - -ts_init_subtest "blkdev-sizelimit" -LODEV=$( $TS_CMD_LOSETUP --sizelimit 3MiB --find --show $BACKFILE ) -if [ -z "$LODEV" ]; then - ts_log "Failed to create loop device" -fi -lo_print $LODEV >> $TS_OUTPUT -$TS_CMD_LOSETUP -d $LODEV -ts_finalize_subtest - - -ts_init_subtest "blkdev-section" -LODEV=$( $TS_CMD_LOSETUP --offset 1MiB --sizelimit 3MiB --find --show $BACKFILE ) -if [ -z "$LODEV" ]; then - ts_log "Failed to create loop device" -fi -lo_print $LODEV >> $TS_OUTPUT -$TS_CMD_LOSETUP -d $LODEV -ts_finalize_subtest - udevadm settle -rmmod scsi_debug - ts_finalize - - - diff --git a/tests/ts/losetup/losetup-blkdev b/tests/ts/losetup/losetup-blkdev new file mode 100755 index 000000000..0181a7d60 --- /dev/null +++ b/tests/ts/losetup/losetup-blkdev @@ -0,0 +1,80 @@ +#!/bin/bash + +# +# Copyright (C) 2013 Karel Zak <kzak@redhat.com> +# +# This file is part of util-linux. +# +# This file is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 2 of the License, or +# (at your option) any later version. +# +# This file 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 General Public License for more details. +# + +TS_TOPDIR="${0%/*}/../.." +TS_DESC="losetup-blkdev" + +. $TS_TOPDIR/functions.sh +ts_init "$*" + +ts_check_test_command "$TS_CMD_LOSETUP" + +ts_skip_nonroot +ts_check_losetup + +. "$TS_SELF/losetup_functions.sh" + +# +# Backing file is a block device +# +ts_scsi_debug_init dev_size_mb=11 +BACKFILE="$TS_DEVICE" + +ts_init_subtest "show" +LODEV=$( $TS_CMD_LOSETUP --find --show $BACKFILE ) +if [ -z "$LODEV" ]; then + ts_log "Failed to create loop device" +fi +lo_print $LODEV >> $TS_OUTPUT +$TS_CMD_LOSETUP -d $LODEV +ts_finalize_subtest + +ts_init_subtest "offset" +LODEV=$( $TS_CMD_LOSETUP --offset 1MiB --find --show $BACKFILE ) +if [ -z "$LODEV" ]; then + ts_log "Failed to create loop device" +fi +lo_print $LODEV >> $TS_OUTPUT +$TS_CMD_LOSETUP -d $LODEV +ts_finalize_subtest + + +ts_init_subtest "sizelimit" +LODEV=$( $TS_CMD_LOSETUP --sizelimit 3MiB --find --show $BACKFILE ) +if [ -z "$LODEV" ]; then + ts_log "Failed to create loop device" +fi +lo_print $LODEV >> $TS_OUTPUT +$TS_CMD_LOSETUP -d $LODEV +ts_finalize_subtest + + +ts_init_subtest "section" +LODEV=$( $TS_CMD_LOSETUP --offset 1MiB --sizelimit 3MiB --find --show $BACKFILE ) +if [ -z "$LODEV" ]; then + ts_log "Failed to create loop device" +fi +lo_print $LODEV >> $TS_OUTPUT +$TS_CMD_LOSETUP -d $LODEV +ts_finalize_subtest + +udevadm settle + +rmmod scsi_debug + +ts_finalize diff --git a/tests/ts/losetup/losetup_functions.sh b/tests/ts/losetup/losetup_functions.sh new file mode 100644 index 000000000..d17c82a30 --- /dev/null +++ b/tests/ts/losetup/losetup_functions.sh @@ -0,0 +1,7 @@ + +function lo_print { + local lo=$1 + echo "offset: $( $TS_CMD_LOSETUP --list --raw -n -O OFFSET $lo )" + echo "sizelimit: $( $TS_CMD_LOSETUP --list --raw -n -O SIZELIMIT $lo )" + echo "size: $( $TS_CMD_LSBLK -o SIZE -b -n -r $lo )" +} diff --git a/tests/ts/schedutils/cpuset b/tests/ts/schedutils/cpuset index f1df59794..afd0fd5a7 100755 --- a/tests/ts/schedutils/cpuset +++ b/tests/ts/schedutils/cpuset @@ -20,7 +20,7 @@ TS_DESC="cpuset" . $TS_TOPDIR/functions.sh ts_init "$*" -ts_check_test_command "$TS_CMD_CPUSET" +ts_check_test_command "$TS_HELPER_CPUSET" MASKS=" 0x00000001 \ 0x00000002 \ |