app/test-crypto-perf: fix segment size for IPsec operation
Checks
Commit Message
Application calculates segment size based on buffer size plus
digest size only, But if the operation mode is IPsec then
packet length can be increased upto 73 bytes due to IPsec
overhead.
In this patch, adding the IPsec overhead length in segment size
when there is no user given segment size.
Signed-off-by: Gagandeep Singh <g.singh@nxp.com>
---
app/test-crypto-perf/cperf_options.h | 1 +
app/test-crypto-perf/cperf_options_parsing.c | 5 ++++-
2 files changed, 5 insertions(+), 1 deletion(-)
@@ -61,6 +61,7 @@
#define CPERF_PMDCC_DELAY_MS ("pmd-cyclecount-delay-ms")
#define MAX_LIST 32
+#define CPERF_IPSEC_OVERHEAD 73
enum cperf_perf_test_type {
CPERF_TEST_TYPE_THROUGHPUT,
@@ -1132,9 +1132,12 @@ cperf_options_check(struct cperf_options *options)
* If segment size is not set, assume only one segment,
* big enough to contain the largest buffer and the digest
*/
- if (options->segment_sz == 0)
+ if (options->segment_sz == 0) {
options->segment_sz = options->max_buffer_size +
options->digest_sz;
+ if (options->op_type == CPERF_IPSEC)
+ options->segment_sz += CPERF_IPSEC_OVERHEAD;
+ }
if (options->segment_sz < options->digest_sz) {
RTE_LOG(ERR, USER1,