[dpdk-dev] [PATCH] test/compress: fix size of test buffer
Marko Kovacevic
marko.kovacevic at intel.com
Thu Jan 24 13:05:55 CET 2019
Changed size of test buffer to 100 to allow
qat to run compress unit-test,
qat_comp_process_response():
QAT intermediate buffer may be too small for output,
try configuring a larger size
Fixes: c1bbb613ce96 ("test/compress: add out of space test")
Cc: marko.kovacevic at intel.com
Signed-off-by: Marko Kovacevic <marko.kovacevic at intel.com>
---
test/test/test_compressdev.c | 25 ++++++++++++++++++-------
1 file changed, 18 insertions(+), 7 deletions(-)
diff --git a/test/test/test_compressdev.c b/test/test/test_compressdev.c
index e8476ed..4db65c4 100644
--- a/test/test/test_compressdev.c
+++ b/test/test/test_compressdev.c
@@ -42,7 +42,7 @@
#define GZIP_HEADER_SIZE 10
#define GZIP_TRAILER_SIZE 8
-#define OUT_OF_SPACE_BUF 1
+#define OUT_OF_SPACE_BUF 100
const char *
huffman_type_strings[] = {
@@ -597,13 +597,15 @@ prepare_sgl_bufs(const char *test_buf, struct rte_mbuf *head_buf,
uint32_t total_data_size,
struct rte_mempool *small_mbuf_pool,
struct rte_mempool *large_mbuf_pool,
- uint8_t limit_segs_in_sgl)
+ uint8_t limit_segs_in_sgl,
+ const struct test_data_params *test_params)
{
uint32_t remaining_data = total_data_size;
uint16_t num_remaining_segs = DIV_CEIL(remaining_data, SMALL_SEG_SIZE);
struct rte_mempool *pool;
struct rte_mbuf *next_seg;
uint32_t data_size;
+ unsigned int out_of_space = test_params->out_of_space;
char *buf_ptr;
const char *data_ptr = test_buf;
uint16_t i;
@@ -639,6 +641,10 @@ prepare_sgl_bufs(const char *test_buf, struct rte_mbuf *head_buf,
* Allocate the rest of the segments,
* copy the rest of the data and chain the segments.
*/
+ if (out_of_space)
+ num_remaining_segs = 1;
+
+
for (i = 0; i < num_remaining_segs; i++) {
if (i == (num_remaining_segs - 1)) {
@@ -647,9 +653,11 @@ prepare_sgl_bufs(const char *test_buf, struct rte_mbuf *head_buf,
pool = large_mbuf_pool;
else
pool = small_mbuf_pool;
- data_size = remaining_data;
+ out_of_space ? data_size = out_of_space :
+ (data_size = remaining_data);
} else {
- data_size = SMALL_SEG_SIZE;
+
+ (data_size = SMALL_SEG_SIZE);
pool = small_mbuf_pool;
}
@@ -759,7 +767,8 @@ test_deflate_comp_decomp(const struct interim_data_params *int_data,
data_size,
ts_params->small_mbuf_pool,
ts_params->large_mbuf_pool,
- MAX_SEGS) < 0)
+ MAX_SEGS,
+ test_data) < 0)
goto exit;
}
} else {
@@ -791,7 +800,8 @@ test_deflate_comp_decomp(const struct interim_data_params *int_data,
data_size,
ts_params->small_mbuf_pool,
ts_params->large_mbuf_pool,
- MAX_SEGS) < 0)
+ MAX_SEGS,
+ test_data) < 0)
goto exit;
}
@@ -1019,7 +1029,8 @@ test_deflate_comp_decomp(const struct interim_data_params *int_data,
data_size,
ts_params->small_mbuf_pool,
ts_params->large_mbuf_pool,
- MAX_SEGS) < 0)
+ MAX_SEGS,
+ test_data) < 0)
goto exit;
}
--
2.9.5
More information about the dev
mailing list