From 331887f7e2a0d064ee187bdbadb92550bf40318c Mon Sep 17 00:00:00 2001 From: Dariusz Stojaczyk Date: Mon, 7 May 2018 08:00:46 +0200 Subject: [PATCH] test/iscsi: disable hotremove tests iSCSI hotremove is broken. It relies on C undefined behavior. Some bdev_io may be put after their bdev_channel has been put (freed) and spdk_bdev_put_io may be reading freed bdev_channel memory. iSCSI tasks targetting hotremoved devices are finished immediately. That's usually fine, but these tasks might be subtasks of an r2t chain. Once subtasks are freed, their parent task may be eventually freed as well. If the parent has finished before the hotremoval, its bdev_io has been assigned, so freeing the task will put that bdev_io and that's where undefined behavior hits. There's an ongoing work towards deferring iSCSI hotremove if r2t tasks are present, so this test should be reenabled once that's done. Change-Id: I7fa741b8749d542bcabb211a0969da5d7742eda3 Signed-off-by: Dariusz Stojaczyk Reviewed-on: https://review.gerrithub.io/410176 Tested-by: SPDK Automated Test System Reviewed-by: Jim Harris Reviewed-by: Daniel Verkamp --- test/iscsi_tgt/fio/fio.sh | 23 ----------------------- 1 file changed, 23 deletions(-) diff --git a/test/iscsi_tgt/fio/fio.sh b/test/iscsi_tgt/fio/fio.sh index 13337fa90..49b5645ab 100755 --- a/test/iscsi_tgt/fio/fio.sh +++ b/test/iscsi_tgt/fio/fio.sh @@ -94,29 +94,6 @@ if [ $RUN_NIGHTLY -eq 1 ]; then running_config fi -# Start hotplug test case. -$fio_py 1048576 128 rw 10 & -fio_pid=$! - -sleep 3 -set +e -$rpc_py delete_bdev 'Malloc0' - -wait $fio_pid -fio_status=$? - -if [ $fio_status -eq 0 ]; then - echo "iscsi hotplug test: fio successful - expected failure" - iscsicleanup - rm -f $testdir/iscsi.conf - killprocess $pid - exit 1 -else - echo "iscsi hotplug test: fio failed as expected" -fi - -set -e - iscsicleanup $rpc_py delete_target_node 'iqn.2016-06.io.spdk:Target3'