Spdk/test/unit/lib
paul luse d58a2f6cc5 lib/accel: support multiple accel modules (aka engines) at once
We enable multiple engines by:

* getting rid of the globals that point to the one available HW
and one available SW engine

* adding a submit_tasks() entry point for the SW engine so that
it is treated like any other engine allowing us to just call
submit_tasks() to the assigned engine for the opcode instead of
checking what is supported

* changing the definition of engine capabilities from
"HW accelerated" to simply "supported"

* during init, use a global (g_engines_opc) that contains engines
and is indexed by opcode so we know what the best engine is for each
op code

* future patches will add RPC's to override engine priorities or
specifically assign an opcode(s) to an engine.

Signed-off-by: paul luse <paul.e.luse@intel.com>
Change-Id: I9b9f3d5a2e499124aa7ccf71f0da83c8ee3dd9f9
Reviewed-on: https://review.spdk.io/gerrit/c/spdk/spdk/+/11870
Community-CI: Mellanox Build Bot
Community-CI: Broadcom CI <spdk-ci.pdl@broadcom.com>
Tested-by: SPDK CI Jenkins <sys_sgci@intel.com>
Reviewed-by: Ben Walker <benjamin.walker@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
Reviewed-by: Aleksey Marchuk <alexeymar@nvidia.com>
2022-05-05 07:11:32 +00:00
..
accel lib/accel: support multiple accel modules (aka engines) at once 2022-05-05 07:11:32 +00:00
bdev bdev/nvme: Add active/active policy for multipath mode 2022-05-05 07:11:24 +00:00
blob blob_ut: bs_opts initialized with wrong size 2022-02-02 08:25:02 +00:00
blobfs test: optimize unit test .gitignore files 2021-08-20 07:29:57 +00:00
dma dma: Update memory domain context structure 2021-10-20 22:55:52 +00:00
env_dpdk test: optimize unit test .gitignore files 2021-08-20 07:29:57 +00:00
event event: Add a user option to change the size of spdk_msg_mempool 2022-03-09 08:00:28 +00:00
ftl spelling: test 2021-12-03 08:13:22 +00:00
idxd idxd: Make many internal idxd_user functions take an idxd_user object 2022-04-20 08:20:45 +00:00
init spelling: test 2021-12-03 08:13:22 +00:00
ioat test: optimize unit test .gitignore files 2021-08-20 07:29:57 +00:00
iscsi ut: Use unit/lib/json_mock.c for stubs 2022-01-31 09:44:28 +00:00
json spelling: test 2021-12-03 08:13:22 +00:00
jsonrpc spelling: test 2021-12-03 08:13:22 +00:00
log test: optimize unit test .gitignore files 2021-08-20 07:29:57 +00:00
lvol lvol: lvol_get_xattr_value failure undetectable 2022-01-31 09:44:16 +00:00
notify test: optimize unit test .gitignore files 2021-08-20 07:29:57 +00:00
nvme nvme_rdma: Wait until lingering qpair becomes quiet before completing disconnection 2022-04-18 18:35:29 +00:00
nvmf nvmf: make nacwu 0-based 2022-04-29 07:29:06 +00:00
reduce lib/reduce: Copy user's buffers if SGL is not supported 2022-03-31 09:34:52 +00:00
rpc ut: Use unit/lib/json_mock.c for stubs 2022-01-31 09:44:28 +00:00
scsi Lib/iSCSI: add the LUN Resize support 2022-01-20 07:56:23 +00:00
sock sock: introduce dynamic zerocopy according to data size 2022-04-28 07:29:28 +00:00
thread event: Add a user option to change the size of spdk_msg_mempool 2022-03-09 08:00:28 +00:00
util dif: enhance copy API to support block-aligned bounce_iov 2022-04-01 08:29:12 +00:00
vhost lib/vhost: move vhost_user related fields from spdk_vhost_dev 2022-04-15 07:49:32 +00:00
json_mock.c ut/json_mock: Add stubs for json_write_uint8 and _uint16 2022-01-31 09:44:28 +00:00
Makefile lib/accel: support multiple accel modules (aka engines) at once 2022-05-05 07:11:32 +00:00