DPDK patches and discussions
 help / color / mirror / Atom feed
From: Ayuj Verma <ayverma@marvell.com>
To: <akhil.goyal@nxp.com>
Cc: <arkadiuszx.kusztal@intel.com>, <shallyv@marvell.com>,
	<ssahu@marvell.com>, <kkotamarthy@marvell.com>,
	<anoobj@marvell.com>, <dev@dpdk.org>,
	Ayuj Verma <ayverma@marvell.com>
Subject: [dpdk-dev] [PATCH v1] test/crypto: improve asymmetric crypto testsuite setup
Date: Wed, 24 Jul 2019 15:57:01 +0530	[thread overview]
Message-ID: <1563964021-28288-2-git-send-email-ayverma@marvell.com> (raw)
In-Reply-To: <1563964021-28288-1-git-send-email-ayverma@marvell.com>

Improve logic:
  * to get list of valid devices based on driver id so that to
    eliminate unnecessary if check for driver id match in device loop
  * loop till 1st device supporting asymmetric feature is found unlike
    previous logic which breaks on 1st device

Signed-off-by: Kanaka Durga Kotamarthy <kkotamarthy@marvell.com>
Signed-off-by: Ayuj Verma <ayverma@marvell.com>
---
 app/test/test_cryptodev_asym.c | 43 +++++++++++++++++++++---------------------
 1 file changed, 22 insertions(+), 21 deletions(-)

diff --git a/app/test/test_cryptodev_asym.c b/app/test/test_cryptodev_asym.c
index 95e7d34..e8177e7 100644
--- a/app/test/test_cryptodev_asym.c
+++ b/app/test/test_cryptodev_asym.c
@@ -710,9 +710,10 @@ struct test_cases_array {
 testsuite_setup(void)
 {
 	struct crypto_testsuite_params *ts_params = &testsuite_params;
+	uint8_t valid_devs[RTE_CRYPTO_MAX_DEVS];
 	struct rte_cryptodev_info info;
-	uint32_t i = 0, nb_devs, dev_id;
-	int ret;
+	int ret, dev_id = -1;
+	uint32_t i, nb_devs;
 	uint16_t qp_id;
 
 	memset(ts_params, 0, sizeof(*ts_params));
@@ -748,36 +749,36 @@ struct test_cases_array {
 		}
 	}
 
-	nb_devs = rte_cryptodev_count();
+	/* Get list of valid crypto devs */
+	nb_devs = rte_cryptodev_devices_get(
+				rte_cryptodev_driver_name_get(gbl_driver_id),
+				valid_devs, RTE_CRYPTO_MAX_DEVS);
 	if (nb_devs < 1) {
 		RTE_LOG(ERR, USER1, "No crypto devices found?\n");
 		return TEST_FAILED;
 	}
 
-	/* Create list of valid crypto devs */
-	for (i = 0; i < nb_devs; i++) {
-		rte_cryptodev_info_get(i, &info);
-		if (info.driver_id == gbl_driver_id)
-			ts_params->valid_devs[ts_params->valid_dev_count++] = i;
+	/*
+	 * Get first valid asymmetric device found in test suite param and
+	 * break
+	 */
+	for (i = 0; i < nb_devs ; i++) {
+		rte_cryptodev_info_get(valid_devs[i], &info);
+		if (info.feature_flags & RTE_CRYPTODEV_FF_ASYMMETRIC_CRYPTO) {
+			dev_id = ts_params->valid_devs[0] = valid_devs[i];
+			break;
+		}
 	}
 
-	if (ts_params->valid_dev_count < 1)
-		return TEST_FAILED;
-
-	/* Set up all the qps on the first of the valid devices found */
-
-	dev_id = ts_params->valid_devs[0];
-
-	rte_cryptodev_info_get(dev_id, &info);
-
-	/* check if device support asymmetric, skip if not */
-	if (!(info.feature_flags &
-				RTE_CRYPTODEV_FF_ASYMMETRIC_CRYPTO)) {
+	if (dev_id == -1) {
 		RTE_LOG(ERR, USER1, "Device doesn't support asymmetric. "
-				"Test Skipped.\n");
+			"Test skipped.\n");
 		return TEST_FAILED;
 	}
 
+	/* Set valid device count */
+	ts_params->valid_dev_count = nb_devs;
+
 	/* configure device with num qp */
 	ts_params->conf.nb_queue_pairs = info.max_nb_queue_pairs;
 	ts_params->conf.socket_id = SOCKET_ID_ANY;
-- 
1.8.3.1


  reply	other threads:[~2019-07-24 10:27 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-24 10:27 Ayuj Verma
2019-07-24 10:27 ` Ayuj Verma [this message]
2019-07-26 13:56   ` Akhil Goyal

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=1563964021-28288-2-git-send-email-ayverma@marvell.com \
    --to=ayverma@marvell.com \
    --cc=akhil.goyal@nxp.com \
    --cc=anoobj@marvell.com \
    --cc=arkadiuszx.kusztal@intel.com \
    --cc=dev@dpdk.org \
    --cc=kkotamarthy@marvell.com \
    --cc=shallyv@marvell.com \
    --cc=ssahu@marvell.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).