numam-spdk/lib
Darek Stojaczyk 5d07cfad54 vhost/scsi: handle io_channel allocation failure
We assumed io_channel allocation always succeeds, but
that's not true. Doing I/O to any vhost session that
failed to allocate an io_channel would most likely
cause a crash.

We'll now detect io_channel allocation failure and
print a proper error message. The SCSI target for
which the channel allocation failed simply won't be
visible to the vhost master. All I/O to that target
will be rejected.

We should probably report the error to the upper
layer and either prevent the device from starting
or fail the SCSI target hotplug request. But for now
let's just prevent the crash.

Change-Id: I735dfb930d8905f70636a236b4fa94288d0aaf3a
Signed-off-by: Darek Stojaczyk <dariusz.stojaczyk@intel.com>
Reviewed-on: https://review.gerrithub.io/c/444874
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
2019-02-15 21:41:00 +00:00
..
bdev bdev/nvme: don't attach user deleted controllers automaticlly 2019-02-15 20:57:03 +00:00
blob lvol: add option to change default data erase method 2019-01-23 22:25:37 +00:00
blobfs blobfs: fix the length value of file. 2019-01-17 05:04:13 +00:00
conf string: spdk_strtol to delegate additional error checking 2019-01-29 00:10:57 +00:00
copy lib/copy: unregister copy engine on finish 2018-10-15 17:42:20 +00:00
env_dpdk vtophys: add vfio no-IOMMU mode support 2019-02-13 17:59:16 +00:00
event event: The reactor now contains a list of threads 2019-02-14 14:58:56 +00:00
ftl lib/ftl: Remove NULL pointer checks in external APIs 2019-02-08 16:35:34 +00:00
ioat memory: replace all hardcoded 0x200000 with a define 2019-01-13 00:47:26 +00:00
iscsi iscsi: Replace helper function spdk_get_data_out_buffer_size() by macro constant 2019-02-15 21:01:08 +00:00
json json_util: add debug logs to spdk_json_decode_object function 2019-01-10 14:31:37 +00:00
jsonrpc jsonrpc: Use spdk_json_write_named_* APIs throughout 2019-02-04 07:08:04 +00:00
log app: rename traceflag cmdline option to logflag 2018-12-03 19:50:15 +00:00
lvol lvol: add option to change default data erase method 2019-01-23 22:25:37 +00:00
nbd nbd: Use spdk_json_write_named_* APIs throughout 2019-02-04 07:08:04 +00:00
net net: Use spdk_json_write_named_* APIs throughout 2019-02-04 07:08:04 +00:00
nvme ocssd: hold lock when calling nvme_ctrlr_submit_admin_request 2019-02-15 21:27:58 +00:00
nvmf rdma: add return to avoid address points to the zero page 2019-02-15 04:29:40 +00:00
reduce reduce: fix ordering bug 2019-02-04 19:23:35 +00:00
rocksdb thread: Rename spdk_allocate_thread to spdk_thread_create 2019-01-17 11:24:38 +00:00
rpc rpc: add spdk_rpc_is_method_allowed 2018-12-05 00:35:35 +00:00
scsi scsi: Use spdk_json_write_named_* APIs throughout 2019-02-04 07:08:04 +00:00
sock UT: fix the sock_ut failure because of the port conflict 2019-01-22 17:28:24 +00:00
thread thread: Add a function to get the thread from a context 2019-02-14 14:58:56 +00:00
trace lib/trace: add trace_record tool 2019-01-30 06:36:25 +00:00
ut_mock thread: Eliminate use of pthread_self and thread_ids 2019-01-15 16:53:12 +00:00
util dif: Rename bitmask macros from SPDK_DIF_*_CHECK to SPDK_DIF_FLAGS_*_CHECK 2019-02-08 23:37:13 +00:00
vhost vhost/scsi: handle io_channel allocation failure 2019-02-15 21:41:00 +00:00
virtio virtio: Use spdk_json_write_named_* APIs throughout 2019-02-04 07:08:04 +00:00
Makefile ftl: Initial implementation 2019-01-11 09:15:39 +00:00