Spdk/include/spdk
paul luse 8a1a845053 idxd: simplification in re-balancing channels
For flow control reasons we have to resize the bit arrays we
use to manage flow as channels come and go.  However since
channels are assigned to devices, until the channel count
reaches the device count there's no sharing so no resize of
the array is needed. So, when we use a device for the first
time there's no need to run through the rest of the channels
and re-balance.

Same thing is done on destruction. The code to free idxd
specific resources was moved from the rebalance function to
the idxd put channel function which is a much more logical
place for it as well.

Signed-off-by: paul luse <paul.e.luse@intel.com>
Change-Id: Ib4df163286906f413dd6429dc6833af7b68e208c
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/5846
Community-CI: Broadcom CI
Community-CI: Mellanox Build Bot
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
2021-02-05 13:42:32 +00:00
..
accel_engine.h accel: Move non-engine specific batch to the accel_fw layer 2020-10-22 22:43:28 +00:00
assert.h include: move standard includes into spdk/stdinc.h 2017-05-08 10:11:01 -07:00
barrier.h barrier: cleanup the file 2019-03-15 19:32:55 +00:00
base64.h util/base64: Extend b64 decode to calculate exact len 2020-02-03 11:39:49 +00:00
bdev_module.h bdev: add function to return aio's errno 2021-01-20 00:13:49 +00:00
bdev_zone.h bdev/zone: scattered zone append 2020-02-20 09:53:03 +00:00
bdev.h bdev: add function to return aio's errno 2021-01-20 00:13:49 +00:00
bit_array.h util: added bit array bitmask load, store and clear 2018-12-14 15:34:53 +00:00
bit_pool.h util: add spdk_bit_pool 2020-09-15 07:12:44 +00:00
blob_bdev.h blob/bdev: Add an API spdk_bdev_create_bs_dev_ext() 2020-10-20 08:52:29 +00:00
blob.h blob: Make the ABI compatibility of spdk_blob_open_opts structure. 2020-12-29 07:55:22 +00:00
blobfs_bdev.h blobfs/fuse: put FUSE code in module blobfs_bdev 2019-10-15 16:25:09 +00:00
blobfs.h blobfs: add result for set_cache_size 2019-11-07 00:33:25 +00:00
conf.h lib/conf: allow multiple sections with same name 2020-07-22 12:24:08 +00:00
cpuset.h cpuset: Expose internal of struct spdk_cpuset in header file 2019-07-04 00:30:22 +00:00
crc16.h util/crc16: Add spdk_crc16_t10dif_copy to use in read strip and write insert 2018-12-20 17:52:29 +00:00
crc32.h lib/util: move some crc32 functions to internal header 2020-05-14 10:37:14 +00:00
dif.h dif: Add spdk_dix_remap_ref_tag to remap ref. tag for separate metadata payload 2019-07-11 11:14:22 +00:00
endian.h include: move standard includes into spdk/stdinc.h 2017-05-08 10:11:01 -07:00
env_dpdk.h env: add a new function for printing memory layout 2019-12-13 11:05:57 +00:00
env.h env: replace master_core with main_core 2020-12-03 09:41:07 +00:00
event.h event: add "A" to SPDK_APP_GETOPT_STRING 2020-12-31 08:28:08 +00:00
fd_group.h interrupt: new fd_group in lib/util 2020-10-23 16:23:48 +00:00
fd.h include/fd.h: add comments for pubclic APIs 2018-01-04 12:12:10 -05:00
file.h util: add a new file operation API 2019-05-15 18:54:27 +00:00
ftl.h lib/ftl: Create l2p on l2p_path file if set in config 2020-03-06 10:28:21 +00:00
gpt_spec.h bdev/gpt: dump partition name 2017-07-12 18:12:52 -04:00
histogram_data.h histograms: add function to merge histograms 2018-11-15 23:03:26 +00:00
idxd.h idxd: simplification in re-balancing channels 2021-02-05 13:42:32 +00:00
ioat_spec.h ioat_spec: fix gcc9 warning 2019-06-17 14:09:03 +00:00
ioat.h lib/ioat: add mew API to get the max # of descriptors supported 2020-07-23 22:26:39 +00:00
iscsi_spec.h iscsi: fix layout of logout request reason field 2017-09-22 16:11:11 -04:00
json.h json: add spdk_json_free_object() 2020-10-19 10:02:10 +00:00
jsonrpc.h lib/jsonrpc: Add a new API to send response for writing bool result. 2020-11-16 15:08:47 +00:00
likely.h include: move standard includes into spdk/stdinc.h 2017-05-08 10:11:01 -07:00
log.h lib/log: do not use spdk_log_get_flag() in macro for log flags 2020-10-16 08:14:59 +00:00
lvol.h lvol: ensure enum for lvol clear method is the same as blobstore 2019-02-28 20:50:27 +00:00
memory.h memory.h: move to public headers 2020-03-19 08:50:45 +00:00
mmio.h mmio: add functions for 1 and 2 byte I/O accesses 2017-10-13 10:46:00 -04:00
nbd.h nbd: Use async manner to stop nbd device. 2020-12-28 14:05:15 +00:00
net.h net: Remove the net_framework subsystem 2020-09-25 11:30:09 +00:00
notify.h lib/notify: rename spdk_notify_get_events to spdk_notify_foreach_event 2019-05-07 06:11:27 +00:00
nvme_intel.h nvme: pad struct spdk_nvme_intel_marketing_description_page 2019-06-05 02:46:50 +00:00
nvme_ocssd_spec.h ocssd: add chunk notification log struct 2018-09-27 01:30:45 +00:00
nvme_ocssd.h ocssd: add chunk notification log struct 2018-09-27 01:30:45 +00:00
nvme_spec.h nvme/spec: add zone append specific PIREMAP define 2021-01-22 08:15:55 +00:00
nvme_zns.h nvme: add support for ZNS zone append command 2021-01-22 08:15:55 +00:00
nvme.h nvme: Add the interface to get the optimal polling group 2021-02-04 08:30:54 +00:00
nvmf_cmd.h lib/nvmf: Support custom admin cmd handler for abort 2020-07-24 07:25:47 +00:00
nvmf_fc_spec.h nvmf/fc: FC Priority tagging and VMID support. 2021-01-14 16:18:25 +00:00
nvmf_spec.h nvmf: remove min number of admin queue entries from spec file 2020-03-12 09:04:18 +00:00
nvmf_transport.h nvmf: revert 'commit ae207216fb ("nvmf: remove request exec backdoor")' 2021-01-11 23:18:07 +00:00
nvmf.h nvmf: Subsystem pauses only pause admin queues 2021-01-26 17:38:54 +00:00
opal_spec.h nvme/opal: use static locking ranges table 2020-03-25 07:52:28 +00:00
opal.h nvme/opal: deprecate spdk_opal_supported() 2020-05-20 14:16:44 +00:00
pci_ids.h env: add spdk_pci_id->class_id 2020-07-23 20:48:47 +00:00
pipe.h pipe: Add a utility for buffering data from sockets 2019-11-20 09:35:32 +00:00
queue_extras.h queue_extras: use SPDK_CONTAINEROF 2019-10-07 15:06:01 +00:00
queue.h Include: Test for __linux__ 2020-11-19 09:53:21 +00:00
reduce.h lib/reduce: change and move the max IOVEC define for reduce 2019-07-29 04:36:59 +00:00
rpc.h rpc: add spdk_rpc_verify_methods() 2019-11-06 15:19:48 +00:00
scsi_spec.h scsi: fix SCSI reservation typos 2019-05-30 21:42:36 +00:00
scsi.h scsi: add bdev resize callback support 2020-09-28 08:33:18 +00:00
sock.h sock: Add new API to set default sock implementation 2020-10-05 08:22:53 +00:00
stdinc.h env: Check supported iommu address width before using iova-mode=va 2019-11-27 07:08:32 +00:00
string.h string: spdk_strtol to delegate additional error checking 2019-01-29 00:10:57 +00:00
thread.h interrupt: apply fd_group in thd and reactor 2020-10-23 16:23:48 +00:00
trace.h trace: shorten max name from 44 to 24 characters 2019-05-02 08:41:56 +00:00
util.h lib/util: Add spdk_sn32_lt/gt() to compare two numbers based on serial number arithmetic 2020-03-19 08:51:31 +00:00
uuid.h util/uuid: add a new uuid copy API. 2018-12-06 22:25:09 +00:00
version.h version: SPDK 21.04 pre 2021-01-26 17:44:02 +00:00
vfio_user_pci.h NVMe/vfio-user: add initial version vfio-user transport to NVMe driver 2021-01-21 05:00:18 +00:00
vfio_user_spec.h NVMe/vfio-user: add initial version vfio-user transport to NVMe driver 2021-01-21 05:00:18 +00:00
vhost.h lib/vhost: Remove and inline spdk_vhost_blk_get_dev 2020-06-08 09:28:27 +00:00
vmd.h lib/vmd: detach devices during shutdown 2020-02-04 16:50:25 +00:00