This patch implements a special way of buffer handling when internal QAT IM buffer is too small for Huffman dynamic compression operation. Instead of falling back to fixed compression, the operation is now split into multiple smaller dynamic compression requests (possible to execute on QAT) and their results are then combined and copied into the output buffer. This is not possible if any checksum calculation was requested - in such case the code falls back to fixed compression as before.
v2: * various post-review small fixes Adam Dybkowski (2): compress/qat: im buffer too small - split op test/compress: im buffer too small - add unit tests app/test/test_compressdev.c | 1251 ++++++++++++++++++++++-- doc/guides/compressdevs/qat_comp.rst | 3 - doc/guides/cryptodevs/qat.rst | 7 +- doc/guides/rel_notes/release_20_05.rst | 10 + drivers/common/qat/qat_qp.c | 223 ++++- drivers/common/qat/qat_qp.h | 3 + drivers/compress/qat/qat_comp.c | 474 ++++++++- drivers/compress/qat/qat_comp.h | 29 +- drivers/compress/qat/qat_comp_pmd.c | 27 +- 9 files changed, 1879 insertions(+), 148 deletions(-) -- 2.17.1