Spdk/lib
Changpeng Liu 9da4e15c5c lib/vhost: start device asynchronously
Now we will start the device(virtio-blk and virtio-scsi) when
there is a valid I/O queue(VRING_KICK message), the backend
device `start_session` callback will ensure this check, so
when processing VRING_KICK messages for each vring, we can
just call `new_device` if `started` is false, and if `started`
is true, it means the device is already started, it's safe
for us to add one more vring even the device is started.

With this change, we don't need to wait for the return value
of `start_session` in synchronous mode, just return is OK.

Fix #2518.

Change-Id: I92ba3d4e5c38422d7697c1d13180a4a48f0dd4cd
Signed-off-by: Changpeng Liu <changpeng.liu@intel.com>
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/14981
Community-CI: Mellanox Build Bot
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
2022-11-03 14:53:55 +00:00
..
accel accel_sw: add extra check on compression 2022-10-25 07:09:37 +00:00
bdev lib/bdev: new __io_ch_to_bdev_ch and __io_ch_to_bdev_mgmt_ch utilities 2022-11-02 15:25:21 +00:00
blob blob: Add functions to find [un]allocated io_unit 2022-09-15 08:23:56 +00:00
blobfs blob: Optimize copy-on-write flow for clusters backed by zeroes device 2022-09-05 12:49:46 +00:00
conf Replace most BSD 3-clause license text with SPDX identifier. 2022-06-09 07:35:12 +00:00
dma check_format: For C files only, fix return type breaks 2022-06-27 09:33:48 +00:00
env_dpdk env_dpdk: add support for DPDK 22.11 2022-11-02 10:50:23 +00:00
env_ocf check_format: For C files only, fix return type breaks 2022-06-27 09:33:48 +00:00
event scheduler: prevent user from switching back to static 2022-10-21 07:33:06 +00:00
ftl bdev: Add copy IO type 2022-11-02 10:33:00 +00:00
idxd lib/idxd: fix use after free due to stale crc_dst in chained ops 2022-10-25 07:10:55 +00:00
init init: Avoid calling RPC methods twice 2022-09-15 08:25:18 +00:00
ioat check_format: For C files only, fix return type breaks 2022-06-27 09:33:48 +00:00
iscsi print better errors when creating mempools from secondary process 2022-08-29 11:41:32 +00:00
json json: fix parsing json problems when json config is invalid. 2022-09-02 07:32:21 +00:00
jsonrpc check_format: For C files only, fix return type breaks 2022-06-27 09:33:48 +00:00
log Replace most BSD 3-clause license text with SPDX identifier. 2022-06-09 07:35:12 +00:00
lvol blobstore: implement spdk_bs_grow and bdev_lvol_grow_lvstore RPC 2022-06-28 17:55:43 +00:00
nbd lib/nbd: return nbd_poll idle or busy accordingly 2022-09-22 07:51:46 +00:00
notify Replace most BSD 3-clause license text with SPDX identifier. 2022-06-09 07:35:12 +00:00
nvme nvme_rdma: Remove workaround for Soft RoCE's bug from cq_process_completions() 2022-10-28 06:27:19 +00:00
nvmf nvmf/vfio-user: switch from shadow doorbells when freeing 2022-10-26 07:32:54 +00:00
rdma rdma: Maintain per device PD which is persistent across reconnect 2022-08-12 08:59:43 +00:00
reduce check_format: For C files only, fix return type breaks 2022-06-27 09:33:48 +00:00
rocksdb Replace most BSD 3-clause license text with SPDX identifier. 2022-06-09 07:35:12 +00:00
rpc rpc: use rw access when creating RPC lock file 2022-10-18 07:23:28 +00:00
scsi lib/scsi: use bkdr hash to avoid naa identifier collision 2022-08-03 07:43:10 +00:00
sock sock: make impl_name const char * in all functions 2022-09-05 12:49:28 +00:00
thread thread: add assert for io_channel_iter allocation failure 2022-09-29 07:27:27 +00:00
trace trace: add likely/unlikely hints to _spdk_trace_record 2022-10-21 07:18:37 +00:00
trace_parser trace: allocate shm filesize based on number of cores used 2022-09-20 10:17:45 +00:00
ut_mock Replace most BSD 3-clause license text with SPDX identifier. 2022-06-09 07:35:12 +00:00
util lib/util: add ISA-L accelerated xor generation 2022-09-29 22:52:45 +00:00
vfio_user lib/vfio-user: add spdk_vfio_user_dev_send_request as public function 2022-09-23 15:16:01 +00:00
vfu_tgt lib/vfu_tgt: add library for PCI device emulation 2022-09-29 19:42:56 +00:00
vhost lib/vhost: start device asynchronously 2022-11-03 14:53:55 +00:00
virtio virtio/vfio_user: add virtio_blk device support 2022-09-29 19:42:56 +00:00
vmd lib/vmd: return -1 if NVMe driver is not found 2022-09-05 12:50:06 +00:00
Makefile vfio_user: remove CONFIG_VFIO_USER flag for client library 2022-09-29 19:42:56 +00:00