numam-spdk/lib
Konrad Sztyber 1c81d1afa2 nvmf: clear ctrlr->listener in remove_listener
When removing a listener, there's a small window when the listener is
already freed, while the controllers that were created on that listener
are still active.  It happens, because the listener is removed before
disconnecting its qpairs and in turn destroying the controllers.

The ctrlr->listener pointer is now cleared when a listener is freed and
its value is checked for NULL before each use.

Signed-off-by: Konrad Sztyber <konrad.sztyber@intel.com>
Change-Id: Iace65a46eebc5972cc4ef0f1c1822ffc5d3e559e
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/9237
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Community-CI: Mellanox Build Bot
Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Ziye Yang <ziye.yang@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
2021-09-08 08:08:59 +00:00
..
accel accel: Fix the data copy issue for copy+crc32c in vector mode. 2021-09-01 07:34:02 +00:00
bdev lib/bdev: added spdk_bdev_module_fini_done() 2021-08-23 08:49:56 +00:00
blob blobstore: calculate correct num_md_clusters in bs_recover 2021-08-09 08:39:42 +00:00
blobfs lib/trace: record string arguments as (const char *) 2021-06-28 16:17:35 +00:00
conf
dma dma: Introduce memory domain 2021-08-20 07:26:10 +00:00
env_dpdk vmd: update for changes in IceLake platform 2021-08-31 08:39:37 +00:00
env_ocf lib/ocf_env: Force struct list 64 bytes alignment 2021-07-28 07:02:14 +00:00
event scheduler: create public API and subsystem for scheduler/governor 2021-09-07 07:33:03 +00:00
ftl lib/trace: don't format arg's name while registering a tpoint 2021-06-10 10:58:05 +00:00
idxd lib/idxd: Fix the idxd_ops resource exhaustion in chan->ops_pool 2021-09-08 07:59:21 +00:00
init util: Add macro SPDK_SIZEOF_MEMBER to get size of a member of a struct 2021-07-15 07:16:22 +00:00
ioat ioat: fix potential double free problem in ioat_channel_start() 2021-06-16 09:00:37 +00:00
iscsi net: Remove library 2021-07-13 08:57:58 +00:00
json json: add the spdk_json_write_uint128 function 2021-07-22 13:46:50 +00:00
jsonrpc jsonrpc: use SOCK_NONBLOCK in socket() calls 2021-05-05 13:31:10 +00:00
log log: add an API to return syslog level based on SPDK's log level 2021-08-12 12:57:39 +00:00
lvol
nbd lib/nbd: hot remove will be correctly handled 2021-07-26 08:56:23 +00:00
notify
nvme nvme: Add spdk_nvme_ctrlr_get_opts 2021-09-08 08:06:23 +00:00
nvmf nvmf: clear ctrlr->listener in remove_listener 2021-09-08 08:08:59 +00:00
rdma include: remove util.h include from queue_extras.h 2021-04-14 07:25:21 +00:00
reduce util: Add macro SPDK_SIZEOF_MEMBER to get size of a member of a struct 2021-07-15 07:16:22 +00:00
rocksdb rocksdb: fix thread name typo 2021-09-03 08:08:20 +00:00
rpc
scsi util: Add macro SPDK_SIZEOF_MEMBER to get size of a member of a struct 2021-07-15 07:16:22 +00:00
sock socket: Remove deprecated enable_zerocopy_send 2021-07-23 10:30:25 +00:00
thread lib/thread: report error when adding to fd group 2021-09-06 09:54:21 +00:00
trace trace: fix the snprintf warning issue. 2021-07-12 14:06:43 +00:00
ut_mock
util lib/util: optimize base64 encode and decode using ARM SVE intrinsics 2021-08-06 07:31:06 +00:00
vfio_user libvfio-user: update submodule 2021-06-22 23:42:02 +00:00
vhost vhost-blk: fix interrupt names 2021-09-02 07:43:37 +00:00
virtio env: only pass failing address to spdk_pci_error_handler 2021-06-15 08:34:28 +00:00
vmd vmd: update for changes in IceLake platform 2021-08-31 08:39:37 +00:00
Makefile dma: Introduce memory domain 2021-08-20 07:26:10 +00:00