Spdk/test/unit/lib
Shuhei Matsumoto 64a268e2e1 iscsi: Fix double dequeue of the primary write task in error handling
By running random, 64KB, 70% write, and 30% read workload and periodical
TCP disconnection from the initiator, segmentation fault have occurred.

By investigation, when the last write task completed and dequeued
the primary write task in spdk_iscsi_task_cpl(), the primary write task
was already dequeued in spdk_clear_all_transfer_task().

This patch dequeues all primary write tasks after all outstanding
tasks complete.

After starting to exit the connection, the connection will not receive
any command. Hence waiting for completion of all pending tasks first will
avoid double dequeue safely.

Change-Id: I8e2b6b756be3a6e096675acc81cdb93fb6a7e350
Signed-off-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
Reviewed-on: https://review.gerrithub.io/430397
Chandler-Test-Pool: SPDK Automated Test System <sys_sgsw@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
2018-10-23 17:58:52 +00:00
..
bdev ut/crypto: update mocked headers for dpdk 18.08 2018-10-22 18:01:45 +00:00
blob blobstore: allow I/O operations to use io unit size smaller than page size. 2018-10-04 21:35:24 +00:00
blobfs test/unit: fix scan-build errors in blobfs tests 2018-08-31 00:01:09 +00:00
event app: don't leak memory after failed arg parsing 2018-09-04 22:22:02 +00:00
ioat ut/ioat: drop legacy mocks 2018-07-03 16:29:42 +00:00
iscsi iscsi: Fix double dequeue of the primary write task in error handling 2018-10-23 17:58:52 +00:00
json json: add utilities function enabling itaration over JSON object 2018-10-18 16:07:37 +00:00
jsonrpc jsonrpc: call spdk_jsonrpc_free_request only from server thread 2018-08-13 20:01:07 +00:00
log ut/log: test print level set and get functions 2018-10-09 18:08:49 +00:00
lvol test/unit: fix Scan-build errors in lvol tests. 2018-08-31 19:09:07 +00:00
nvme nvme: make identify ns can be executed asynchronously 2018-10-15 17:57:56 +00:00
nvmf lib/nvmf: add the nvmf qpair to the available poll group 2018-10-16 12:54:02 +00:00
scsi trace: add spdk_trace_record_tsc 2018-09-04 17:09:25 +00:00
sock sock: Update the spdk_sock_getaddr function. 2018-10-11 04:58:49 +00:00
thread thread: Add a name parameter to spdk_register_io_device 2018-09-05 16:00:54 +00:00
util bit_array: return UINT32_MAX if no cleared bits found 2018-10-08 17:03:33 +00:00
vhost ut/vhost: remove backend-specific tests 2018-07-03 22:18:57 +00:00
json_mock.c subsystem: add per module configuration dump 2018-03-23 02:47:40 -04:00
Makefile net: split sock abstraction into lib/sock 2018-06-22 17:09:57 +00:00