diff --git a/scripts/check_format.sh b/scripts/check_format.sh index e056ae8d7..856f2ba88 100755 --- a/scripts/check_format.sh +++ b/scripts/check_format.sh @@ -242,7 +242,7 @@ if hash shellcheck 2>/dev/null; then # This SHCK_EXCLUDE list is out "to do" and we work to fix all of this errors. SHCK_EXCLUDE="SC1083,SC2002,\ SC2010,SC2012,SC2016,SC2034,SC2045,SC2046,SC2068,SC2086,SC2089,SC2090,\ -SC2097,SC2098,SC2119,SC2120,SC2128" +SC2097,SC2098,SC2119,SC2120" # SPDK fails some error checks which have been deprecated in later versions of shellcheck. # We will not try to fix these error checks, but instead just leave the error types here # so that we can still run with older versions of shellcheck. diff --git a/scripts/setup.sh b/scripts/setup.sh index 7ff8356f4..a71c18956 100755 --- a/scripts/setup.sh +++ b/scripts/setup.sh @@ -264,7 +264,7 @@ function configure_linux_pci { fi blknames=() get_virtio_names_from_bdf "$bdf" blknames - for blkname in $blknames; do + for blkname in "${blknames[@]}"; do if [ "$(lsblk /dev/$blkname --output MOUNTPOINT -n | wc -w)" != "0" ]; then pci_dev_echo "$bdf" "Active mountpoints on /dev/$blkname, so not binding" continue 2 @@ -612,7 +612,7 @@ function status_linux { vendor=$(cat /sys/bus/pci/devices/$bdf/vendor) blknames=() get_virtio_names_from_bdf "$bdf" blknames - echo -e "$bdf\t${vendor#0x}\t${device#0x}\t$node\t\t${driver:--}\t\t$blknames" + echo -e "$bdf\t${vendor#0x}\t${device#0x}\t$node\t\t${driver:--}\t\t" "${blknames[@]}" done done diff --git a/scripts/vagrant/create_vbox.sh b/scripts/vagrant/create_vbox.sh index 477f0e8a6..d8fde23de 100755 --- a/scripts/vagrant/create_vbox.sh +++ b/scripts/vagrant/create_vbox.sh @@ -132,7 +132,7 @@ shift "$((OPTIND-1))" # Discard the options and sentinel -- SPDK_VAGRANT_DISTRO=( "$@" ) -case "$SPDK_VAGRANT_DISTRO" in +case "${SPDK_VAGRANT_DISTRO[0]}" in centos7) export SPDK_VAGRANT_DISTRO ;; diff --git a/scripts/vagrant/create_vhost_vm.sh b/scripts/vagrant/create_vhost_vm.sh index 696ce5102..35222c901 100755 --- a/scripts/vagrant/create_vhost_vm.sh +++ b/scripts/vagrant/create_vhost_vm.sh @@ -70,9 +70,10 @@ export INSTALL_DEPS shift "$((OPTIND-1))" # Discard the options and sentinel -- + SPDK_VAGRANT_DISTRO=( "$@" ) -case "$SPDK_VAGRANT_DISTRO" in +case "${SPDK_VAGRANT_DISTRO[0]}" in ubuntu16) export SPDK_VAGRANT_DISTRO ;; diff --git a/test/json_config/json_config.sh b/test/json_config/json_config.sh index ee8c50fd3..e51910cb7 100755 --- a/test/json_config/json_config.sh +++ b/test/json_config/json_config.sh @@ -42,7 +42,7 @@ RE_UUID="[[:alnum:]-]+" last_event_id=0 function tgt_check_notification_types() { - timing_enter $FUNCNAME + timing_enter "${FUNCNAME[0]}" local ret=0 local enabled_types="bdev_register @@ -54,7 +54,7 @@ function tgt_check_notification_types() { ret=1 fi - timing_exit $FUNCNAME + timing_exit "${FUNCNAME[0]}" return $ret } @@ -147,7 +147,7 @@ function json_config_test_shutdown_app() { } function create_bdev_subsystem_config() { - timing_enter $FUNCNAME + timing_enter "${FUNCNAME[0]}" local expected_notifications=() @@ -159,7 +159,7 @@ function create_bdev_subsystem_config() { echo "WARNING: No NVMe drive found. Using '$lvol_store_base_bdev' instead." else echo "ERROR: No NVMe drive found and bdev_aio is not supported on $(uname -s)." - timing_exit $FUNCNAME + timing_exit "${FUNCNAME[0]}" return 1 fi fi @@ -243,11 +243,11 @@ function create_bdev_subsystem_config() { tgt_check_notifications "${expected_notifications[@]}" - timing_exit $FUNCNAME + timing_exit "${FUNCNAME[0]}" } function cleanup_bdev_subsystem_config() { - timing_enter $FUNCNAME + timing_enter "${FUNCNAME[0]}" if [[ $SPDK_TEST_BLOCKDEV -eq 1 ]]; then tgt_rpc bdev_lvol_delete lvs_test/clone0 @@ -270,11 +270,11 @@ function cleanup_bdev_subsystem_config() { rbd_cleanup fi - timing_exit $FUNCNAME + timing_exit "${FUNCNAME[0]}" } function create_vhost_subsystem_config() { - timing_enter $FUNCNAME + timing_enter "${FUNCNAME[0]}" tgt_rpc bdev_malloc_create 64 1024 --name MallocForVhost0 tgt_rpc bdev_split_create MallocForVhost0 8 @@ -290,20 +290,20 @@ function create_vhost_subsystem_config() { # tgt_rpc vhost_create_nvme_controller VhostNvmeCtrlr0 16 # tgt_rpc vhost_nvme_controller_add_ns VhostNvmeCtrlr0 MallocForVhost0p6 - timing_exit $FUNCNAME + timing_exit "${FUNCNAME[0]}" } function create_iscsi_subsystem_config() { - timing_enter $FUNCNAME + timing_enter "${FUNCNAME[0]}" tgt_rpc bdev_malloc_create 64 1024 --name MallocForIscsi0 tgt_rpc iscsi_create_portal_group $PORTAL_TAG 127.0.0.1:$ISCSI_PORT tgt_rpc iscsi_create_initiator_group $INITIATOR_TAG $INITIATOR_NAME $NETMASK tgt_rpc iscsi_create_target_node Target3 Target3_alias 'MallocForIscsi0:0' $PORTAL_TAG:$INITIATOR_TAG 64 -d - timing_exit $FUNCNAME + timing_exit "${FUNCNAME[0]}" } function create_nvmf_subsystem_config() { - timing_enter $FUNCNAME + timing_enter "${FUNCNAME[0]}" RDMA_IP_LIST=$(get_available_rdma_ips) NVMF_FIRST_TARGET_IP=$(echo "$RDMA_IP_LIST" | head -n 1) @@ -321,21 +321,21 @@ function create_nvmf_subsystem_config() { tgt_rpc nvmf_subsystem_add_ns nqn.2016-06.io.spdk:cnode1 MallocForNvmf1 tgt_rpc nvmf_subsystem_add_listener nqn.2016-06.io.spdk:cnode1 -t RDMA -a $NVMF_FIRST_TARGET_IP -s "$NVMF_PORT" - timing_exit $FUNCNAME + timing_exit "${FUNCNAME[0]}" } function create_virtio_initiator_config() { - timing_enter $FUNCNAME + timing_enter "${FUNCNAME[0]}" initiator_rpc bdev_virtio_attach_controller -t user -a /var/tmp/VhostScsiCtrlr0 -d scsi VirtioScsiCtrlr0 initiator_rpc bdev_virtio_attach_controller -t user -a /var/tmp/VhostBlkCtrlr0 -d blk VirtioBlk0 # TODO: initiator_rpc bdev_virtio_attach_controller -t user -a /var/tmp/VhostNvmeCtrlr0 -d nvme VirtioNvme0 - timing_exit $FUNCNAME + timing_exit "${FUNCNAME[0]}" } function json_config_test_init() { - timing_enter $FUNCNAME + timing_enter "${FUNCNAME[0]}" timing_enter json_config_setup_target json_config_test_start_app target --wait-for-rpc @@ -375,11 +375,11 @@ function json_config_test_init() tgt_rpc bdev_malloc_create 8 512 --name MallocBdevForConfigChangeCheck - timing_exit $FUNCNAME + timing_exit "${FUNCNAME[0]}" } function json_config_test_fini() { - timing_enter $FUNCNAME + timing_enter "${FUNCNAME[0]}" local ret=0 if [[ -n "${app_pid[initiator]}" ]]; then @@ -396,7 +396,7 @@ function json_config_test_fini() { fi rm -f "${configs_path[@]}" - timing_exit $FUNCNAME + timing_exit "${FUNCNAME[0]}" return $ret } diff --git a/test/nvmf/nvmf.sh b/test/nvmf/nvmf.sh index ee19b3513..78f7bdfcd 100755 --- a/test/nvmf/nvmf.sh +++ b/test/nvmf/nvmf.sh @@ -15,43 +15,43 @@ trap "exit 1" SIGINT SIGTERM EXIT TEST_ARGS=( "$@" ) -run_test suite test/nvmf/target/filesystem.sh $TEST_ARGS -run_test suite test/nvmf/target/discovery.sh $TEST_ARGS -run_test suite test/nvmf/target/connect_disconnect.sh $TEST_ARGS +run_test suite test/nvmf/target/filesystem.sh "${TEST_ARGS[@]}" +run_test suite test/nvmf/target/discovery.sh "${TEST_ARGS[@]}" +run_test suite test/nvmf/target/connect_disconnect.sh "${TEST_ARGS[@]}" if [ $SPDK_TEST_NVME_CLI -eq 1 ]; then - run_test suite test/nvmf/target/nvme_cli.sh $TEST_ARGS + run_test suite test/nvmf/target/nvme_cli.sh "${TEST_ARGS[@]}" fi -run_test suite test/nvmf/target/nvmf_lvol.sh $TEST_ARGS +run_test suite test/nvmf/target/nvmf_lvol.sh "${TEST_ARGS[@]}" #TODO: disabled due to intermittent failures. Need to triage. # run_test suite test/nvmf/target/srq_overwhelm.sh $TEST_ARGS -run_test suite test/nvmf/target/nvmf_vhost.sh $TEST_ARGS -run_test suite test/nvmf/target/bdev_io_wait.sh $TEST_ARGS -run_test suite test/nvmf/target/create_transport.sh $TEST_ARGS -run_test suite test/nvmf/target/multitarget.sh $TEST_ARGS +run_test suite test/nvmf/target/nvmf_vhost.sh "${TEST_ARGS[@]}" +run_test suite test/nvmf/target/bdev_io_wait.sh "${TEST_ARGS[@]}" +run_test suite test/nvmf/target/create_transport.sh "${TEST_ARGS[@]}" +run_test suite test/nvmf/target/multitarget.sh "${TEST_ARGS[@]}" if [ $RUN_NIGHTLY -eq 1 ]; then - run_test suite test/nvmf/target/fuzz.sh $TEST_ARGS - run_test suite test/nvmf/target/multiconnection.sh $TEST_ARGS - run_test suite test/nvmf/target/initiator_timeout.sh $TEST_ARGS + run_test suite test/nvmf/target/fuzz.sh "${TEST_ARGS[@]}" + run_test suite test/nvmf/target/multiconnection.sh "${TEST_ARGS[@]}" + run_test suite test/nvmf/target/initiator_timeout.sh "${TEST_ARGS[@]}" fi -run_test suite test/nvmf/target/nmic.sh $TEST_ARGS -run_test suite test/nvmf/target/rpc.sh $TEST_ARGS -run_test suite test/nvmf/target/fio.sh $TEST_ARGS -run_test suite test/nvmf/target/shutdown.sh $TEST_ARGS -run_test suite test/nvmf/target/bdevio.sh $TEST_ARGS +run_test suite test/nvmf/target/nmic.sh "${TEST_ARGS[@]}" +run_test suite test/nvmf/target/rpc.sh "${TEST_ARGS[@]}" +run_test suite test/nvmf/target/fio.sh "${TEST_ARGS[@]}" +run_test suite test/nvmf/target/shutdown.sh "${TEST_ARGS[@]}" +run_test suite test/nvmf/target/bdevio.sh "${TEST_ARGS[@]}" timing_enter host -run_test suite test/nvmf/host/bdevperf.sh $TEST_ARGS -run_test suite test/nvmf/host/identify.sh $TEST_ARGS -run_test suite test/nvmf/host/perf.sh $TEST_ARGS +run_test suite test/nvmf/host/bdevperf.sh "${TEST_ARGS[@]}" +run_test suite test/nvmf/host/identify.sh "${TEST_ARGS[@]}" +run_test suite test/nvmf/host/perf.sh "${TEST_ARGS[@]}" # TODO: disabled due to intermittent failures (RDMA_CM_EVENT_UNREACHABLE/ETIMEDOUT) #run_test test/nvmf/host/identify_kernel_nvmf.sh $TEST_ARGS -run_test suite test/nvmf/host/aer.sh $TEST_ARGS -run_test suite test/nvmf/host/fio.sh $TEST_ARGS -run_test suite test/nvmf/host/target_disconnect.sh $TEST_ARGS +run_test suite test/nvmf/host/aer.sh "${TEST_ARGS[@]}" +run_test suite test/nvmf/host/fio.sh "${TEST_ARGS[@]}" +run_test suite test/nvmf/host/target_disconnect.sh "${TEST_ARGS[@]}" timing_exit host diff --git a/test/ocf/integrity/bdevperf-iotypes.sh b/test/ocf/integrity/bdevperf-iotypes.sh index 1e4de92e6..b23ea4258 100755 --- a/test/ocf/integrity/bdevperf-iotypes.sh +++ b/test/ocf/integrity/bdevperf-iotypes.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash -curdir=$(dirname $(readlink -f "$BASH_SOURCE")) +curdir=$(dirname $(readlink -f "${BASH_SOURCE[0]}")) rootdir=$(readlink -f $curdir/../../..) source $rootdir/test/common/autotest_common.sh diff --git a/test/ocf/integrity/fio-modes.sh b/test/ocf/integrity/fio-modes.sh index ab5812482..d766208c0 100755 --- a/test/ocf/integrity/fio-modes.sh +++ b/test/ocf/integrity/fio-modes.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash -curdir=$(dirname $(readlink -f "$BASH_SOURCE")) +curdir=$(dirname $(readlink -f "${BASH_SOURCE[0]}")) rootdir=$(readlink -f $curdir/../../..) plugindir=$rootdir/examples/bdev/fio_plugin diff --git a/test/ocf/integrity/stats.sh b/test/ocf/integrity/stats.sh index 4a870f1ff..d4ad93b4d 100755 --- a/test/ocf/integrity/stats.sh +++ b/test/ocf/integrity/stats.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash -curdir=$(dirname $(readlink -f "$BASH_SOURCE")) +curdir=$(dirname $(readlink -f "${BASH_SOURCE[0]}")) rootdir=$(readlink -f $curdir/../../..) source $rootdir/test/common/autotest_common.sh diff --git a/test/ocf/management/create-destruct.sh b/test/ocf/management/create-destruct.sh index c31305df0..044581eaf 100755 --- a/test/ocf/management/create-destruct.sh +++ b/test/ocf/management/create-destruct.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash -curdir=$(dirname $(readlink -f "$BASH_SOURCE")) +curdir=$(dirname $(readlink -f "${BASH_SOURCE[0]}")) rootdir=$(readlink -f $curdir/../../..) source $rootdir/test/common/autotest_common.sh diff --git a/test/ocf/management/multicore.sh b/test/ocf/management/multicore.sh index 008996c01..47be26d2d 100755 --- a/test/ocf/management/multicore.sh +++ b/test/ocf/management/multicore.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash -curdir=$(dirname $(readlink -f "$BASH_SOURCE")) +curdir=$(dirname $(readlink -f "${BASH_SOURCE[0]}")) rootdir=$(readlink -f $curdir/../../..) source $rootdir/test/common/autotest_common.sh diff --git a/test/ocf/management/persistent-metadata.sh b/test/ocf/management/persistent-metadata.sh index 8a8968240..cd7315bf6 100755 --- a/test/ocf/management/persistent-metadata.sh +++ b/test/ocf/management/persistent-metadata.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash -curdir=$(dirname $(readlink -f "$BASH_SOURCE")) +curdir=$(dirname $(readlink -f "${BASH_SOURCE[0]}")) rootdir=$(readlink -f $curdir/../../..) source $rootdir/scripts/common.sh source $rootdir/test/common/autotest_common.sh diff --git a/test/ocf/management/remove.sh b/test/ocf/management/remove.sh index 87d1cac2b..84cf08706 100755 --- a/test/ocf/management/remove.sh +++ b/test/ocf/management/remove.sh @@ -1,6 +1,6 @@ #!/usr/bin/env bash -curdir=$(dirname $(readlink -f "$BASH_SOURCE")) +curdir=$(dirname $(readlink -f "${BASH_SOURCE[0]}")) rootdir=$(readlink -f $curdir/../../..) source $rootdir/test/common/autotest_common.sh