Spdk/include/spdk
Kamuda, Szymon cb2f0a2cf5 nvmf: pause/resume polling for the target
There is a way to pause/resume spdk pollers, however there is no way
to achieve that using public API for the given target which has
a hook behaving similar to pollers. Exposing such functionality can
be used for pausing and restoring target pollers during
reset, e.g. new commands should not be fetched to assure
that all internal resources can be cleared/reinitialized safety.
Pausing target poller during the reset will assure that, without
need for destroying transport or adding condition statements in IO path.

Similar use case might be hitless upgrade. Depending on implementation
there might be need that no new command can be submitted when
secondary processes are being switched to upgraded versions.
Pausing target pollers should be useful in this case.

Signed-off-by: Kamuda Szymon <szymon.kamuda@intel.com>
Change-Id: I419816552c710c43e02197ebcc20a967fb23b3bd
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/15911
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Konrad Sztyber <konrad.sztyber@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
2023-01-24 14:49:24 +00:00
..
accel.h lib/accel: add output_size to decompress API 2023-01-19 11:16:01 +00:00
assert.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
barrier.h barrier: LOONGARCH memory barriers 2023-01-06 15:54:46 +00:00
base64.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
bdev_module.h bdev: rename values of enum spdk_bdev_reset_stat_mode 2023-01-19 17:33:24 +00:00
bdev_zone.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
bdev.h bdev: examine and register on app thread 2023-01-05 23:28:32 +00:00
bit_array.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
bit_pool.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
blob_bdev.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
blob.h misc: Fix spelling mistakes 2022-12-09 08:16:18 +00:00
blobfs_bdev.h build: compile API functions with missing deps 2022-11-18 08:40:05 +00:00
blobfs.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
conf.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
cpuset.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
crc16.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
crc32.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
dif.h misc: Fix spelling mistakes 2022-12-09 08:16:18 +00:00
dma.h dma: add "virtual" accel memory domain 2023-01-09 12:37:37 +00:00
endian.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
env_dpdk.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
env.h env_dpdk: Add function to iterate memory chunks in a pool 2023-01-20 17:56:34 +00:00
event.h lib/env_dpdk: Add support for vfio-vf-token parameter 2022-12-12 09:41:25 +00:00
fd_group.h util: add function spdk_fd_group_get_epoll_event 2022-11-22 10:01:43 +00:00
fd.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
file.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
ftl.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
gpt_spec.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
hexlify.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
histogram_data.h histogram_data: check bucket_shift when merging 2022-12-21 09:32:40 +00:00
idxd_spec.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
idxd.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
init.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
ioat_spec.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
ioat.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
iscsi_spec.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
json.h json: add spdk_json_write_named_double 2022-11-22 10:01:43 +00:00
jsonrpc.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
likely.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
log.h log: add deprecated tracking API 2022-12-07 17:45:53 +00:00
lvol.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
memory.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
mmio.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
nbd.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
notify.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
nvme_intel.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
nvme_ocssd_spec.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
nvme_ocssd.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
nvme_spec.h nvme: add SPDK_NVME_IDENTIFY_BUFLEN 2023-01-06 15:54:18 +00:00
nvme_zns.h Replace most BSD 3-clause license text with SPDX identifier. 2022-06-09 07:35:12 +00:00
nvme.h nvme_rdma: Support SRQ for I/O qpairs 2023-01-17 23:53:01 +00:00
nvmf_cmd.h nvmf: Add ZNS specific identify functions for NVMe-oF ZNS support 2023-01-16 08:30:34 +00:00
nvmf_fc_spec.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
nvmf_spec.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
nvmf_transport.h nvmf: make poll groups count unassociated qpairs 2022-12-01 10:57:29 +00:00
nvmf.h nvmf: pause/resume polling for the target 2023-01-24 14:49:24 +00:00
opal_spec.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
opal.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
pci_ids.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
pipe.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
queue_extras.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
queue.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
reduce.h bdev/compress: Port to use accel_fw instead of compressdev 2023-01-20 10:26:21 +00:00
rpc.h lib/rpc: add RPC allow list 2022-11-15 08:31:02 +00:00
scheduler.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
scsi_spec.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
scsi.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
sock.h sock/uring: Flushing a socket not in a group still attempts to send 2023-01-19 17:34:01 +00:00
stdinc.h env_dpdk: fix check for AMD iommu 2022-11-15 08:31:13 +00:00
string.h util: Add spdk_strcpy_replace() to replace substrings 2023-01-10 13:12:05 +00:00
thread.h lib/thread: iobuf get/put functions will not add offset 2023-01-16 08:35:33 +00:00
trace_parser.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
trace.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
tree.h util: rename RB_ROOT into _RB_ROOT 2021-06-04 22:46:40 +00:00
ublk.h ublk: add configure and event/subsystem 2023-01-20 07:48:25 +00:00
util.h util: add spdk_iov_one() 2023-01-16 09:38:43 +00:00
uuid.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
version.h version: SPDK 23.05 pre 2023-01-20 22:03:09 +00:00
vfio_user_pci.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
vfio_user_spec.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
vfu_target.h lib/vfu_target: add missed comments to vfu_target.h 2022-12-02 10:44:51 +00:00
vhost.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
vmd.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
xor.h update Intel copyright notices 2022-11-10 08:28:53 +00:00
zipf.h update Intel copyright notices 2022-11-10 08:28:53 +00:00