01:01:45.051 11:03:13 sw_hotplug -- common/autotest_common.sh@715 -- # time='========== Backtrace start: ========== 01:01:45.051 01:01:45.051 in /home/vagrant/spdk_repo/spdk/test/common/autotest_common.sh:715 -> timing_cmd(["remove_attach_helper"],["3"],["6"],["true"]) 01:01:45.051 ... 01:01:45.051 710 01:01:45.051 711 # We redirect cmd'\''s std{out,err} to a separate fd dup'\''ed to stdin'\''s device (or /dev/null) to 01:01:45.051 712 # catch only output from the time builtin - output from the actual cmd would be still visible, 01:01:45.051 713 # but $() will return just the time'\''s data, hence making it possible to just do: 01:01:45.051 714 # time_of_super_verbose_cmd=$(timing_cmd super_verbose_cmd) 01:01:45.051 => 715 time=$({ time "$@" >&"$cmd_out" 2>&1; } 2>&1) 01:01:45.051 716 01:01:45.051 717 echo "$time" 01:01:45.051 718 ) 01:01:45.051 719 01:01:45.051 720 function timing_enter() { 01:01:45.051 ... 01:01:45.051 in /home/vagrant/spdk_repo/spdk/test/nvme/sw_hotplug.sh:16 -> debug_remove_attach_helper(["3"],["6"],["true"]) 01:01:45.051 ... 01:01:45.051 11 # Pci bus hotplug 01:01:45.051 12 # Helper function to remove/attach cotrollers 01:01:45.051 13 debug_remove_attach_helper() { 01:01:45.051 14 local helper_time=0 01:01:45.051 15 01:01:45.051 => 16 helper_time=$(timing_cmd remove_attach_helper "$@") 01:01:45.052 17 printf '\''remove_attach_helper took %ss to complete (handling %u nvme drive(s))'\'' \ 01:01:45.052 18 "$helper_time" "$nvme_count" >&2 01:01:45.052 19 } 01:01:45.052 20 01:01:45.052 21 remove_attach_helper() { 01:01:45.052 ... 01:01:45.052 in /home/vagrant/spdk_repo/spdk/test/nvme/sw_hotplug.sh:110 -> tgt_run_hotplug([]) 01:01:45.052 ... 01:01:45.052 105 waitforbdev "Nvme0${dev}n1" "$hotplug_wait" 01:01:45.052 106 done 01:01:45.052 107 01:01:45.052 108 rpc_cmd bdev_nvme_set_hotplug -e 01:01:45.052 109 01:01:45.052 => 110 debug_remove_attach_helper "$hotplug_events" "$hotplug_wait" true 01:01:45.052 111 # Verify reregistering hotplug poller 01:01:45.052 112 rpc_cmd bdev_nvme_set_hotplug -d 01:01:45.052 113 rpc_cmd bdev_nvme_set_hotplug -e 01:01:45.052 114 01:01:45.052 115 debug_remove_attach_helper "$hotplug_events" "$hotplug_wait" true 01:01:45.052 ... 01:01:45.052 in /home/vagrant/spdk_repo/spdk/test/nvme/sw_hotplug.sh:138 -> main([]) 01:01:45.052 ... 01:01:45.052 133 01:01:45.052 134 # Run pci bus hotplug test 01:01:45.052 135 run_hotplug 01:01:45.052 136 01:01:45.052 137 # Run SPDK target based hotplug 01:01:45.052 => 138 tgt_run_hotplug 01:01:45.052 ... 01:01:45.052 01:01:45.052 ========== Backtrace end ========== 01:01:45.052 ========== Backtrace start: ========== 01:01:45.052 01:01:45.310 in /home/vagrant/spdk_repo/spdk/test/common/autotest_common.sh:715 -> timing_cmd(["remove_attach_helper"],["3"],["6"],["true"]) 01:01:45.310 ... 01:01:45.310 710 01:01:45.310 711 # We redirect cmd's std{out,err} to a separate fd dup'ed to stdin's device (or /dev/null) to 01:01:45.310 712 # catch only output from the time builtin - output from the actual cmd would be still visible, 01:01:45.310 713 # but $() will return just the time's data, hence making it possible to just do: 01:01:45.310 714 # time_of_super_verbose_cmd=$(timing_cmd super_verbose_cmd) 01:01:45.310 => 715 time=$({ time "$@" >&"$cmd_out" 2>&1; } 2>&1) 01:01:45.310 716 01:01:45.310 717 echo "$time" 01:01:45.310 718 ) 01:01:45.310 719 01:01:45.310 720 function timing_enter() { 01:01:45.310 ... 01:01:45.310 in /home/vagrant/spdk_repo/spdk/test/nvme/sw_hotplug.sh:16 -> debug_remove_attach_helper(["3"],["6"],["true"]) 01:01:45.310 ... 01:01:45.310 11 # Pci bus hotplug 01:01:45.310 12 # Helper function to remove/attach cotrollers 01:01:45.310 13 debug_remove_attach_helper() { 01:01:45.310 14 local helper_time=0 01:01:45.310 15 01:01:45.310 => 16 helper_time=$(timing_cmd remove_attach_helper "$@") 01:01:45.310 17 printf 'remove_attach_helper took %ss to complete (handling %u nvme drive(s))' \ 01:01:45.310 18 "$helper_time" "$nvme_count" >&2 01:01:45.310 19 } 01:01:45.310 20 01:01:45.310 21 remove_attach_helper() { 01:01:45.310 ... 01:01:45.310 in /home/vagrant/spdk_repo/spdk/test/nvme/sw_hotplug.sh:110 -> tgt_run_hotplug([]) 01:01:45.310 ... 01:01:45.310 105 waitforbdev "Nvme0${dev}n1" "$hotplug_wait" 01:01:45.310 106 done 01:01:45.310 107 01:01:45.310 108 rpc_cmd bdev_nvme_set_hotplug -e 01:01:45.310 109 01:01:45.310 => 110 debug_remove_attach_helper "$hotplug_events" "$hotplug_wait" true 01:01:45.310 111 # Verify reregistering hotplug poller 01:01:45.310 112 rpc_cmd bdev_nvme_set_hotplug -d 01:01:45.310 113 rpc_cmd bdev_nvme_set_hotplug -e 01:01:45.310 114 01:01:45.310 115 debug_remove_attach_helper "$hotplug_events" "$hotplug_wait" true 01:01:45.310 ... 01:01:45.310 in /home/vagrant/spdk_repo/spdk/test/nvme/sw_hotplug.sh:138 -> main([]) 01:01:45.310 ... 01:01:45.310 133 01:01:45.310 134 # Run pci bus hotplug test 01:01:45.310 135 run_hotplug 01:01:45.310 136 01:01:45.310 137 # Run SPDK target based hotplug 01:01:45.310 => 138 tgt_run_hotplug 01:01:45.310 ... 01:01:45.310 01:01:45.310 ========== Backtrace end ========== 01:01:45.310 ========== Backtrace start: ========== 01:01:45.310 01:01:45.310 in /home/vagrant/spdk_repo/spdk/test/common/autotest_common.sh:718 -> timing_cmd(["remove_attach_helper"],["3"],["6"],["true"]) 01:01:45.310 ... 01:01:45.310 713 # but $() will return just the time's data, hence making it possible to just do: 01:01:45.310 714 # time_of_super_verbose_cmd=$(timing_cmd super_verbose_cmd) 01:01:45.310 715 time=$({ time "$@" >&"$cmd_out" 2>&1; } 2>&1) 01:01:45.310 716 01:01:45.310 717 echo "$time" 01:01:45.310 => 718 ) 01:01:45.310 719 01:01:45.310 720 function timing_enter() { 01:01:45.310 721 xtrace_disable 01:01:45.310 722 timing "enter" "$1" 01:01:45.310 723 xtrace_restore 01:01:45.310 ... 01:01:45.310 in /home/vagrant/spdk_repo/spdk/test/nvme/sw_hotplug.sh:16 -> debug_remove_attach_helper(["3"],["6"],["true"]) 01:01:45.310 ... 01:01:45.310 11 # Pci bus hotplug 01:01:45.310 12 # Helper function to remove/attach cotrollers 01:01:45.310 13 debug_remove_attach_helper() { 01:01:45.310 14 local helper_time=0 01:01:45.310 15 01:01:45.310 => 16 helper_time=$(timing_cmd remove_attach_helper "$@") 01:01:45.310 17 printf 'remove_attach_helper took %ss to complete (handling %u nvme drive(s))' \ 01:01:45.310 18 "$helper_time" "$nvme_count" >&2 01:01:45.310 19 } 01:01:45.310 20 01:01:45.310 21 remove_attach_helper() { 01:01:45.310 ... 01:01:45.310 in /home/vagrant/spdk_repo/spdk/test/nvme/sw_hotplug.sh:110 -> tgt_run_hotplug([]) 01:01:45.310 ... 01:01:45.310 105 waitforbdev "Nvme0${dev}n1" "$hotplug_wait" 01:01:45.310 106 done 01:01:45.310 107 01:01:45.310 108 rpc_cmd bdev_nvme_set_hotplug -e 01:01:45.310 109 01:01:45.310 => 110 debug_remove_attach_helper "$hotplug_events" "$hotplug_wait" true 01:01:45.310 111 # Verify reregistering hotplug poller 01:01:45.310 112 rpc_cmd bdev_nvme_set_hotplug -d 01:01:45.310 113 rpc_cmd bdev_nvme_set_hotplug -e 01:01:45.310 114 01:01:45.310 115 debug_remove_attach_helper "$hotplug_events" "$hotplug_wait" true 01:01:45.310 ... 01:01:45.310 in /home/vagrant/spdk_repo/spdk/test/nvme/sw_hotplug.sh:138 -> main([]) 01:01:45.310 ... 01:01:45.310 133 01:01:45.310 134 # Run pci bus hotplug test 01:01:45.310 135 run_hotplug 01:01:45.310 136 01:01:45.310 137 # Run SPDK target based hotplug 01:01:45.310 => 138 tgt_run_hotplug 01:01:45.310 ... 01:01:45.310 01:01:45.310 ========== Backtrace end ========== 01:01:45.310 ========== Backtrace start: ========== 01:01:45.310 01:01:45.310 in /home/vagrant/spdk_repo/spdk/test/nvme/sw_hotplug.sh:16 -> debug_remove_attach_helper(["3"],["6"],["true"]) 01:01:45.310 ... 01:01:45.310 11 # Pci bus hotplug 01:01:45.310 12 # Helper function to remove/attach cotrollers 01:01:45.310 13 debug_remove_attach_helper() { 01:01:45.310 14 local helper_time=0 01:01:45.310 15 01:01:45.310 => 16 helper_time=$(timing_cmd remove_attach_helper "$@") 01:01:45.310 17 printf 'remove_attach_helper took %ss to complete (handling %u nvme drive(s))' \ 01:01:45.310 18 "$helper_time" "$nvme_count" >&2 01:01:45.310 19 } 01:01:45.310 20 01:01:45.310 21 remove_attach_helper() { 01:01:45.310 ... 01:01:45.310 in /home/vagrant/spdk_repo/spdk/test/nvme/sw_hotplug.sh:110 -> tgt_run_hotplug([]) 01:01:45.310 ... 01:01:45.310 105 waitforbdev "Nvme0${dev}n1" "$hotplug_wait" 01:01:45.310 106 done 01:01:45.310 107 01:01:45.310 108 rpc_cmd bdev_nvme_set_hotplug -e 01:01:45.310 109 01:01:45.310 => 110 debug_remove_attach_helper "$hotplug_events" "$hotplug_wait" true 01:01:45.310 111 # Verify reregistering hotplug poller 01:01:45.310 112 rpc_cmd bdev_nvme_set_hotplug -d 01:01:45.310 113 rpc_cmd bdev_nvme_set_hotplug -e 01:01:45.310 114 01:01:45.310 115 debug_remove_attach_helper "$hotplug_events" "$hotplug_wait" true 01:01:45.310 ... 01:01:45.310 in /home/vagrant/spdk_repo/spdk/test/nvme/sw_hotplug.sh:138 -> main([]) 01:01:45.310 ... 01:01:45.310 133 01:01:45.310 134 # Run pci bus hotplug test 01:01:45.310 135 run_hotplug 01:01:45.310 136 01:01:45.310 137 # Run SPDK target based hotplug 01:01:45.310 => 138 tgt_run_hotplug 01:01:45.310 ... 01:01:45.310 01:01:45.310 ========== Backtrace end ========== 01:01:47.616 ========== Backtrace start: ========== 01:01:47.616 01:01:47.616 in /home/vagrant/spdk_repo/spdk/test/common/autotest_common.sh:1122 -> run_test(["sw_hotplug"],["/home/vagrant/spdk_repo/spdk/test/nvme/sw_hotplug.sh"]) 01:01:47.616 ... 01:01:47.616 1117 timing_enter $test_name 01:01:47.616 1118 echo "************************************" 01:01:47.616 1119 echo "START TEST $test_name" 01:01:47.616 1120 echo "************************************" 01:01:47.616 1121 xtrace_restore 01:01:47.616 1122 time "$@" 01:01:47.616 1123 xtrace_disable 01:01:47.616 1124 echo "************************************" 01:01:47.616 1125 echo "END TEST $test_name" 01:01:47.616 1126 echo "************************************" 01:01:47.616 1127 timing_exit $test_name 01:01:47.616 ... 01:01:47.616 in /home/vagrant/spdk_repo/spdk/autotest.sh:240 -> main(["/home/vagrant/spdk_repo/autorun-spdk.conf"]) 01:01:47.616 ... 01:01:47.616 235 01:01:47.616 236 run_test "nvme_rpc" $rootdir/test/nvme/nvme_rpc.sh 01:01:47.616 237 run_test "nvme_rpc_timeouts" $rootdir/test/nvme/nvme_rpc_timeouts.sh 01:01:47.616 238 01:01:47.616 239 if [ $(uname -s) = Linux ]; then 01:01:47.616 => 240 run_test "sw_hotplug" $rootdir/test/nvme/sw_hotplug.sh 01:01:47.616 241 fi 01:01:47.616 242 01:01:47.616 243 if [[ $SPDK_TEST_XNVME -eq 1 ]]; then 01:01:47.616 244 run_test "nvme_xnvme" $rootdir/test/nvme/xnvme/xnvme.sh 01:01:47.616 245 run_test "blockdev_xnvme" $rootdir/test/bdev/blockdev.sh "xnvme" 01:01:47.616 ... 01:01:47.616 01:01:47.616 ========== Backtrace end ==========