Spdk/test
Shuhei Matsumoto 5124f87f4e iscsi: Abort queued datain task before submitting abort to SCSI layer
By up to the previous patch in the patch series, unexpected behavior
due to write tasks in task management commands have been fixed.

But unexpected behavior due to read tasks in task management commands
have been still observed.

Remaining patches in the patch series will fix the unexpected behavior
due to read tasks in task management commands.

This patch is for ABORT TASK.

ABORT TASK is not supported in SCSI layer yet. But the initiator
doesn't care about the failure is due to not-supported or failure.
It must be avoided that the task management command returns SCSI Good
but some tasks are not aborted and return SCSI Good later. On the other
hand, it is acceptable that the task management command returns
failure but some tasks are partially aborted.

Hence this patch adds operation without checking the support status
in SCSI layer.

iSCSI layer doesn't have pending queue and hence if the target task
is read task and is queued in queued_datain_tasks, it must be
aborted before submitting ABORT TASK to SCSI layer.

Aborting the target task may not complete by an iteration because
submitted read tasks are limited. Hence use poller to complete abortion
by repetition.

Change-Id: I030a8b2f19c2f7c7d2f7b0b2c633579534db631b
Signed-off-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
Reviewed-on: https://review.gerrithub.io/436076
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Chandler-Test-Pool: SPDK Automated Test System <sys_sgsw@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
2018-12-10 20:34:11 +00:00
..
app build: remove xx_MODULES_LINKER_ARGS and xx_MODULES_FILES 2018-11-28 16:43:01 +00:00
bdev build: remove xx_MODULES_LINKER_ARGS and xx_MODULES_FILES 2018-11-28 16:43:01 +00:00
blobfs build: remove xx_MODULES_LINKER_ARGS and xx_MODULES_FILES 2018-11-28 16:43:01 +00:00
blobstore vbdev_crypto.c: Always initialize crypto drivers up front 2018-10-24 23:29:28 +00:00
common test: modify coredump maximums to 5G 2018-12-10 10:03:04 +00:00
config_converter nvmf: remove tgt_opts from nvmf_tgt 2018-11-08 23:08:26 +00:00
cpp_headers build: add @: to remaining 'all' targets 2018-02-14 17:38:25 -05:00
env test/pci: add ut for pci hooks 2018-12-06 03:41:32 +00:00
event build: add ENV_LINKER_ARGS to LINK_C and LINK_CXX 2018-11-28 10:21:45 +00:00
ioat ioat: remove ioat kperf kernel driver test harness 2018-04-30 17:11:53 +00:00
iscsi_tgt test: update qos.sh to add new test cases 2018-12-07 17:15:41 +00:00
json_config test/json_config: add passthru to clear_config.py 2018-11-12 20:14:32 +00:00
lvol test: modprobe nbd at the start of autotest 2018-11-26 18:17:28 +00:00
nvme test/nvme: sleep after mounting in the setup.sh test 2018-12-05 00:36:08 +00:00
nvmf nvmf: Add test that kills initiator with no I/O outstanding 2018-12-07 18:20:30 +00:00
pmem Check file permissions in the check_format script 2018-10-04 23:08:12 +00:00
rpc_client jsonrpc client: non-blocking mode 2018-12-07 09:41:03 +00:00
spdkcli test/spdkcli: Run different parts of tests with given spdk target. 2018-12-07 22:59:07 +00:00
unit iscsi: Abort queued datain task before submitting abort to SCSI layer 2018-12-10 20:34:11 +00:00
vhost test/vhost: add fio and lvol integrity cases with raid bdev 2018-11-29 23:59:48 +00:00
Makefile jsonrpc-client: add new C client library 2018-10-11 20:07:44 +00:00
spdk_cunit.h test: remove leftover spdk_cunit declaration 2018-07-06 22:47:56 +00:00