From: Emma Finn <emma.finn@intel.com>
To: Kai Ji <kai.ji@intel.com>
Cc: dev@dpdk.org, gakhil@marvell.com, Emma Finn <emma.finn@intel.com>
Subject: [PATCH] app/crypto-perf: Only run AEAD decrypt with valid test vector file.
Date: Mon, 28 Jul 2025 08:06:21 +0000 [thread overview]
Message-ID: <20250728080621.1241228-1-emma.finn@intel.com> (raw)
The test dummy vector data is incorrect for AEAD decryption, so we should
only run when passed a valid test vector file. This patch also moves the
check for correct test vector data to after the vector has been
populated by test vector file or dummy data.
Signed-off-by: Emma Finn <emma.finn@intel.com>
---
app/test-crypto-perf/cperf_options_parsing.c | 19 +++++++++++++++++--
app/test-crypto-perf/main.c | 12 ++++++------
2 files changed, 23 insertions(+), 8 deletions(-)
diff --git a/app/test-crypto-perf/cperf_options_parsing.c b/app/test-crypto-perf/cperf_options_parsing.c
index 0e0dc4fd06..12623e4cfe 100644
--- a/app/test-crypto-perf/cperf_options_parsing.c
+++ b/app/test-crypto-perf/cperf_options_parsing.c
@@ -1482,11 +1482,26 @@ cperf_options_check(struct cperf_options *options)
}
}
- if (options->test == CPERF_TEST_TYPE_THROUGHPUT &&
+ if ((options->test == CPERF_TEST_TYPE_THROUGHPUT ||
+ options->test == CPERF_TEST_TYPE_LATENCY) &&
(options->aead_op == RTE_CRYPTO_AEAD_OP_DECRYPT ||
options->auth_op == RTE_CRYPTO_AUTH_OP_VERIFY) &&
!options->out_of_place) {
- RTE_LOG(ERR, USER1, "Only out-of-place is allowed in throughput decryption.\n");
+ RTE_LOG(ERR, USER1, "Only out-of-place is allowed in throughput and"
+ " latency decryption.\n");
+ return -EINVAL;
+ }
+
+ if ((options->test == CPERF_TEST_TYPE_THROUGHPUT ||
+ options->test == CPERF_TEST_TYPE_LATENCY) &&
+ (options->aead_op == RTE_CRYPTO_AEAD_OP_DECRYPT ||
+ options->auth_op == RTE_CRYPTO_AUTH_OP_VERIFY) &&
+ options->test_name == NULL &&
+ options->test_file == NULL) {
+ RTE_LOG(ERR, USER1, "Define path to the file with test"
+ " vectors.\n");
+ RTE_LOG(ERR, USER1, "Define test name to get the correct digest"
+ " from the test vectors.\n");
return -EINVAL;
}
diff --git a/app/test-crypto-perf/main.c b/app/test-crypto-perf/main.c
index 2e38c0011d..ef3c71b492 100644
--- a/app/test-crypto-perf/main.c
+++ b/app/test-crypto-perf/main.c
@@ -731,12 +731,6 @@ main(int argc, char **argv)
" specified file\n");
goto err;
}
-
- if (cperf_check_test_vector(&opts, t_vec)) {
- RTE_LOG(ERR, USER1, "Incomplete necessary test vectors"
- "\n");
- goto err;
- }
} else {
t_vec = cperf_test_vector_get_dummy(&opts);
if (t_vec == NULL) {
@@ -746,6 +740,12 @@ main(int argc, char **argv)
goto err;
}
}
+ /* Add check for test vector data after dummy and file option. */
+ if (cperf_check_test_vector(&opts, t_vec)) {
+ RTE_LOG(ERR, USER1, "Incomplete necessary test vectors"
+ "\n");
+ goto err;
+ }
ret = cperf_get_op_functions(&opts, &op_fns);
if (ret) {
--
2.34.1
next reply other threads:[~2025-07-28 8:06 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-07-28 8:06 Emma Finn [this message]
2025-07-29 9:50 ` [v2] " Emma Finn
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250728080621.1241228-1-emma.finn@intel.com \
--to=emma.finn@intel.com \
--cc=dev@dpdk.org \
--cc=gakhil@marvell.com \
--cc=kai.ji@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).