This patch series add software zlib library (http://zlib.net/) based compression PMD in DPDK compress drivers.
Application must need to install zlib prior to enabling this PMD to avail compression/decompression services. Currently driver only tested for deflate, stateless compression and decompression. Changes in v4: - fixed -Wimplcit-fallthrough compilation error with gcc-7+ toolchain Changes in v3: - added comp_feature_flags to compressdev_capabilities - removed stream_create as stateful not supported - changed compression strategy to DEFAULT_STRATEGY - Simplified core processing logic - fix doc build error - other v2 feedbacks TBDs - No change to current qp enqueue_err stats update. - PMD increment enqd_err stats, if it fails to push op into completion queue. This logic to be revisited based on further discussion Changes in v2: - removed unused variables - corrected capability to reflect current support - add lookup for internally maintained mempool during device_configure - optimized core compression/decompression logic in enq/deq APIs - updated documentation with correct feature support v1 includes: - build changes to build zlib PMD - zlib PMD implementation - zlib PMD documentation - meson build support This patchset is dependent upon compressdev API. Ashish Gupta (2): compress/zlib: add ZLIB PMD compress/zlib: add device PMD ops Shally Verma (1): doc: add ZLIB PMD guide Sunila Sahu (2): compress/zlib: create private xform compress/zlib: support burst enqueue/dequeue MAINTAINERS | 5 + config/common_base | 5 + doc/guides/compressdevs/features/zlib.ini | 11 + doc/guides/compressdevs/index.rst | 1 + doc/guides/compressdevs/zlib.rst | 69 ++++ drivers/compress/Makefile | 1 + drivers/compress/meson.build | 2 +- drivers/compress/zlib/Makefile | 29 ++ drivers/compress/zlib/meson.build | 14 + drivers/compress/zlib/rte_pmd_zlib_version.map | 3 + drivers/compress/zlib/zlib_pmd.c | 427 +++++++++++++++++++++++++ drivers/compress/zlib/zlib_pmd_ops.c | 308 ++++++++++++++++++ drivers/compress/zlib/zlib_pmd_private.h | 71 ++++ mk/rte.app.mk | 2 + 14 files changed, 947 insertions(+), 1 deletion(-) create mode 100644 doc/guides/compressdevs/features/zlib.ini create mode 100644 doc/guides/compressdevs/zlib.rst create mode 100644 drivers/compress/zlib/Makefile create mode 100644 drivers/compress/zlib/meson.build create mode 100644 drivers/compress/zlib/rte_pmd_zlib_version.map create mode 100644 drivers/compress/zlib/zlib_pmd.c create mode 100644 drivers/compress/zlib/zlib_pmd_ops.c create mode 100644 drivers/compress/zlib/zlib_pmd_private.h -- 2.9.5