[v1,1/2] test/crypto: enable security feature for security tests

Message ID 20200716152952.65107-2-david.coyle@intel.com (mailing list archive)
State Accepted, archived
Delegated to: akhil goyal
Headers
Series enable security feature for security tests |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/iol-broadcom-Performance success Performance Testing PASS
ci/iol-mellanox-Performance success Performance Testing PASS
ci/iol-intel-Performance success Performance Testing PASS
ci/iol-testing success Testing PASS

Commit Message

Coyle, David July 16, 2020, 3:29 p.m. UTC
  The RTE_CRYPTODEV_FF_SECURITY feature was disabled through the
ff_disable device configuration option for all cryptodev tests,
including security related tests. This patch updates the cryptodev unit
tests to not disable RTE_CRYPTODEV_FF_SECURITY for DOCSIS and PDCP
security tests.

Fixes: ea31f2b4f547 ("test/crypto: add DOCSIS security cases")

Signed-off-by: David Coyle <david.coyle@intel.com>
---
 app/test/test_cryptodev.c | 22 ++++++++++++++++++----
 1 file changed, 18 insertions(+), 4 deletions(-)
  

Comments

Akhil Goyal July 16, 2020, 5:05 p.m. UTC | #1
> The RTE_CRYPTODEV_FF_SECURITY feature was disabled through the
> ff_disable device configuration option for all cryptodev tests,
> including security related tests. This patch updates the cryptodev unit
> tests to not disable RTE_CRYPTODEV_FF_SECURITY for DOCSIS and PDCP
> security tests.
> 
> Fixes: ea31f2b4f547 ("test/crypto: add DOCSIS security cases")
> 
> Signed-off-by: David Coyle <david.coyle@intel.com>
> ---
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
  
De Lara Guarch, Pablo July 17, 2020, 6:17 p.m. UTC | #2
> -----Original Message-----
> From: Coyle, David <david.coyle@intel.com>
> Sent: Thursday, July 16, 2020 4:30 PM
> To: akhil.goyal@nxp.com; Doherty, Declan <declan.doherty@intel.com>; De
> Lara Guarch, Pablo <pablo.de.lara.guarch@intel.com>; Trahe, Fiona
> <fiona.trahe@intel.com>
> Cc: dev@dpdk.org; Ryan, Brendan <brendan.ryan@intel.com>; O'loingsigh,
> Mairtin <mairtin.oloingsigh@intel.com>; Coyle, David <david.coyle@intel.com>
> Subject: [PATCH v1 1/2] test/crypto: enable security feature for security tests
> 
> The RTE_CRYPTODEV_FF_SECURITY feature was disabled through the ff_disable
> device configuration option for all cryptodev tests, including security related
> tests. This patch updates the cryptodev unit tests to not disable
> RTE_CRYPTODEV_FF_SECURITY for DOCSIS and PDCP security tests.
> 
> Fixes: ea31f2b4f547 ("test/crypto: add DOCSIS security cases")
> 
> Signed-off-by: David Coyle <david.coyle@intel.com>

Actually, since PDCP security tests were added in previous releases, this could be backported, right? Commit d883e6e71 ("test/crypto: add PDCP C-Plane encap cases") added PDCP test cases and the ff_disable option was already present.
Akhil, do you think we need to backport this?

Pablo
  
Akhil Goyal July 18, 2020, 8:07 p.m. UTC | #3
Hi Pablo,
> >
> > The RTE_CRYPTODEV_FF_SECURITY feature was disabled through the
> ff_disable
> > device configuration option for all cryptodev tests, including security related
> > tests. This patch updates the cryptodev unit tests to not disable
> > RTE_CRYPTODEV_FF_SECURITY for DOCSIS and PDCP security tests.
> >
> > Fixes: ea31f2b4f547 ("test/crypto: add DOCSIS security cases")
> >
> > Signed-off-by: David Coyle <david.coyle@intel.com>
> 
> Actually, since PDCP security tests were added in previous releases, this could be
> backported, right? Commit d883e6e71 ("test/crypto: add PDCP C-Plane encap
> cases") added PDCP test cases and the ff_disable option was already present.
> Akhil, do you think we need to backport this?
> 
Good catch, but currently PDCP is only supported by NXP platforms and we do not
do anything in dev_configure(), so the change will not make any difference.
I believe many PMDs are also not doing anything in the dev_configure().
So I believe there is no need to backport this patch. NXP will fix this in the PMDs
when it is required.

Regards,
Akhil
  
Akhil Goyal July 18, 2020, 9:18 p.m. UTC | #4
> 
> 
> > The RTE_CRYPTODEV_FF_SECURITY feature was disabled through the
> > ff_disable device configuration option for all cryptodev tests,
> > including security related tests. This patch updates the cryptodev unit
> > tests to not disable RTE_CRYPTODEV_FF_SECURITY for DOCSIS and PDCP
> > security tests.
> >
> > Fixes: ea31f2b4f547 ("test/crypto: add DOCSIS security cases")
> >
> > Signed-off-by: David Coyle <david.coyle@intel.com>
> > ---
> Acked-by: Akhil Goyal <akhil.goyal@nxp.com>

Patchset applied to dpdk-next-crypto

Thanks.
  

Patch

diff --git a/app/test/test_cryptodev.c b/app/test/test_cryptodev.c
index 42e47059a..3d3548bb4 100644
--- a/app/test/test_cryptodev.c
+++ b/app/test/test_cryptodev.c
@@ -631,7 +631,7 @@  testsuite_teardown(void)
 }
 
 static int
-ut_setup(void)
+dev_configure_and_start(uint64_t ff_disable)
 {
 	struct crypto_testsuite_params *ts_params = &testsuite_params;
 	struct crypto_unittest_params *ut_params = &unittest_params;
@@ -643,7 +643,7 @@  ut_setup(void)
 
 	/* Reconfigure device to default parameters */
 	ts_params->conf.socket_id = SOCKET_ID_ANY;
-	ts_params->conf.ff_disable = RTE_CRYPTODEV_FF_SECURITY;
+	ts_params->conf.ff_disable = ff_disable;
 	ts_params->qp_conf.nb_descriptors = MAX_NUM_OPS_INFLIGHT;
 	ts_params->qp_conf.mp_session = ts_params->session_mpool;
 	ts_params->qp_conf.mp_session_private = ts_params->session_priv_mpool;
@@ -673,6 +673,20 @@  ut_setup(void)
 	return TEST_SUCCESS;
 }
 
+static int
+ut_setup(void)
+{
+	/* Configure and start the device with security feature disabled */
+	return dev_configure_and_start(RTE_CRYPTODEV_FF_SECURITY);
+}
+
+static int
+ut_setup_security(void)
+{
+	/* Configure and start the device with no features disabled */
+	return dev_configure_and_start(0);
+}
+
 static void
 ut_teardown(void)
 {
@@ -12533,9 +12547,9 @@  static struct unit_test_suite cryptodev_testsuite  = {
 			test_verify_auth_aes_cmac_cipher_null_test_case_1),
 
 #ifdef RTE_LIBRTE_SECURITY
-		TEST_CASE_ST(ut_setup, ut_teardown,
+		TEST_CASE_ST(ut_setup_security, ut_teardown,
 			test_PDCP_PROTO_all),
-		TEST_CASE_ST(ut_setup, ut_teardown,
+		TEST_CASE_ST(ut_setup_security, ut_teardown,
 			test_DOCSIS_PROTO_all),
 #endif
 		TEST_CASES_END() /**< NULL terminate unit test array */