Spdk/include/spdk_internal
paul luse 5b03dd938c module/idxd: accel framework plug-in for idxd
Docs, RPC, unit tests, etc., will follow.  Notes:

* The current implementation will only work with VFIO.

* The current implementation supports only the existing accel
framework API. The API will be expanded for DSA exclusive features
in a subsequent patch.

* SW is required to manage flow control, to not over-run the work queues.
This is provided in the accel plug-in module. The upper layers use public
API to manage this.

* As we need to support any number of channels (we can't limit ourselves
to the number of work queues) we need to dynamically size/resize our
per channel descriptor rings based on the number of current channels. This
is done from upper layers via public API into the lib.

* As channels are created, the total number of work queue slots is divided
across the channels evenly.  Same thing when they are destroyed, remaining
channels will see the ring sizes increase. This is done from upper layers
via public API into the lib.

Signed-off-by: paul luse <paul.e.luse@intel.com>
Change-Id: Ifaa39935107206a2d990cec992854675e5502057
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/1722
Community-CI: Mellanox Build Bot
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
2020-04-23 15:48:32 +00:00
..
accel_engine.h module/idxd: accel framework plug-in for idxd 2020-04-23 15:48:32 +00:00
assert.h include: Move the remainder of the code base to stdinc.h 2017-05-08 13:20:36 -07:00
event.h lib/event: add subsystem iterator functions. 2020-04-22 09:21:55 +00:00
idxd.h lib/idxd: add low level idxd library 2020-04-23 15:48:32 +00:00
log.h iscsi: Dump PDU contents to know what PDU was sent in illegal state 2019-06-07 05:11:00 +00:00
lvolstore.h lvol: add option to change default data erase method 2019-01-23 22:25:37 +00:00
mock.h test: Add mocks for sendmsg and recvmsg 2019-11-01 17:56:16 +00:00
nvme_tcp.h Revert "nvme/tcp: Change hdr in nvme_tcp_pdu to pointer" 2020-03-17 08:23:07 +00:00
sock.h lib/sock: remove spdk_sock_set_priority 2020-04-22 09:19:01 +00:00
thread.h lib/thread: Cleanup thread structure 2020-04-14 11:33:05 +00:00
uring.h uring: Add a uring.h file. 2019-12-30 11:45:51 +00:00
utf.h utf.h: remove #include "spdk/json.h" 2018-01-31 14:37:16 -05:00
vhost_user.h vhost_user: add VHOST_USER_PROTOCOL_F_INFLIGHT_SHMFD definition 2020-01-13 12:43:16 +00:00
virtio.h virtio: remove VHOST_USER_F_PROTOCOL_FEATURES from virtio.h 2020-01-10 08:45:45 +00:00