* [dpdk-stable] [PATCH 18.11] test/crypto: fix session init failure for wireless case
@ 2019-12-18 4:45 Nipun Gupta
2019-12-18 11:22 ` Kevin Traynor
0 siblings, 1 reply; 2+ messages in thread
From: Nipun Gupta @ 2019-12-18 4:45 UTC (permalink / raw)
To: ktraynor; +Cc: stable, Hemant Agrawal
From: Hemant Agrawal <hemant.agrawal@nxp.com>
This patch add the support to handle the failure in session
create for wireless related cases. Else it will cause
segment fault due to I/O on un-initialized sessions.
Fixes: b3bbd9e5f2659 ("cryptodev: support device independent sessions")
Cc: stable@dpdk.org
Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
---
test/test/test_cryptodev.c | 22 +++++++++++++++-------
1 file changed, 15 insertions(+), 7 deletions(-)
diff --git a/test/test/test_cryptodev.c b/test/test/test_cryptodev.c
index fbe8c21e6..5ddd25781 100644
--- a/test/test/test_cryptodev.c
+++ b/test/test/test_cryptodev.c
@@ -2300,6 +2300,7 @@ create_wireless_algo_hash_session(uint8_t dev_id,
enum rte_crypto_auth_algorithm algo)
{
uint8_t hash_key[key_len];
+ int status;
struct crypto_testsuite_params *ts_params = &testsuite_params;
struct crypto_unittest_params *ut_params = &unittest_params;
@@ -2322,8 +2323,9 @@ create_wireless_algo_hash_session(uint8_t dev_id,
ut_params->sess = rte_cryptodev_sym_session_create(
ts_params->session_mpool);
- rte_cryptodev_sym_session_init(dev_id, ut_params->sess,
+ status = rte_cryptodev_sym_session_init(dev_id, ut_params->sess,
&ut_params->auth_xform, ts_params->session_mpool);
+ TEST_ASSERT_EQUAL(status, 0, "session init failed");
TEST_ASSERT_NOT_NULL(ut_params->sess, "Session creation failed");
return 0;
}
@@ -2336,7 +2338,7 @@ create_wireless_algo_cipher_session(uint8_t dev_id,
uint8_t iv_len)
{
uint8_t cipher_key[key_len];
-
+ int status;
struct crypto_testsuite_params *ts_params = &testsuite_params;
struct crypto_unittest_params *ut_params = &unittest_params;
@@ -2359,8 +2361,9 @@ create_wireless_algo_cipher_session(uint8_t dev_id,
ut_params->sess = rte_cryptodev_sym_session_create(
ts_params->session_mpool);
- rte_cryptodev_sym_session_init(dev_id, ut_params->sess,
+ status = rte_cryptodev_sym_session_init(dev_id, ut_params->sess,
&ut_params->cipher_xform, ts_params->session_mpool);
+ TEST_ASSERT_EQUAL(status, 0, "session init failed");
TEST_ASSERT_NOT_NULL(ut_params->sess, "Session creation failed");
return 0;
}
@@ -2438,6 +2441,7 @@ create_wireless_algo_cipher_auth_session(uint8_t dev_id,
{
uint8_t cipher_auth_key[key_len];
+ int status;
struct crypto_testsuite_params *ts_params = &testsuite_params;
struct crypto_unittest_params *ut_params = &unittest_params;
@@ -2475,9 +2479,10 @@ create_wireless_algo_cipher_auth_session(uint8_t dev_id,
ut_params->sess = rte_cryptodev_sym_session_create(
ts_params->session_mpool);
- rte_cryptodev_sym_session_init(dev_id, ut_params->sess,
+ status = rte_cryptodev_sym_session_init(dev_id, ut_params->sess,
&ut_params->cipher_xform, ts_params->session_mpool);
+ TEST_ASSERT_EQUAL(status, 0, "session init failed");
TEST_ASSERT_NOT_NULL(ut_params->sess, "Session creation failed");
return 0;
}
@@ -2492,6 +2497,7 @@ create_wireless_cipher_auth_session(uint8_t dev_id,
{
const uint8_t key_len = tdata->key.len;
uint8_t cipher_auth_key[key_len];
+ int status;
struct crypto_testsuite_params *ts_params = &testsuite_params;
struct crypto_unittest_params *ut_params = &unittest_params;
@@ -2534,9 +2540,10 @@ create_wireless_cipher_auth_session(uint8_t dev_id,
ut_params->sess = rte_cryptodev_sym_session_create(
ts_params->session_mpool);
- rte_cryptodev_sym_session_init(dev_id, ut_params->sess,
+ status = rte_cryptodev_sym_session_init(dev_id, ut_params->sess,
&ut_params->cipher_xform, ts_params->session_mpool);
+ TEST_ASSERT_EQUAL(status, 0, "session init failed");
TEST_ASSERT_NOT_NULL(ut_params->sess, "Session creation failed");
return 0;
}
@@ -2562,7 +2569,7 @@ create_wireless_algo_auth_cipher_session(uint8_t dev_id,
uint8_t cipher_iv_len)
{
uint8_t auth_cipher_key[key_len];
-
+ int status;
struct crypto_testsuite_params *ts_params = &testsuite_params;
struct crypto_unittest_params *ut_params = &unittest_params;
@@ -2596,9 +2603,10 @@ create_wireless_algo_auth_cipher_session(uint8_t dev_id,
ut_params->sess = rte_cryptodev_sym_session_create(
ts_params->session_mpool);
- rte_cryptodev_sym_session_init(dev_id, ut_params->sess,
+ status = rte_cryptodev_sym_session_init(dev_id, ut_params->sess,
&ut_params->auth_xform, ts_params->session_mpool);
+ TEST_ASSERT_EQUAL(status, 0, "session init failed");
TEST_ASSERT_NOT_NULL(ut_params->sess, "Session creation failed");
return 0;
--
2.17.1
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [dpdk-stable] [PATCH 18.11] test/crypto: fix session init failure for wireless case
2019-12-18 4:45 [dpdk-stable] [PATCH 18.11] test/crypto: fix session init failure for wireless case Nipun Gupta
@ 2019-12-18 11:22 ` Kevin Traynor
0 siblings, 0 replies; 2+ messages in thread
From: Kevin Traynor @ 2019-12-18 11:22 UTC (permalink / raw)
To: Nipun Gupta; +Cc: stable, Hemant Agrawal
On 18/12/2019 04:45, Nipun Gupta wrote:
> From: Hemant Agrawal <hemant.agrawal@nxp.com>
>
> This patch add the support to handle the failure in session
> create for wireless related cases. Else it will cause
> segment fault due to I/O on un-initialized sessions.
>
> Fixes: b3bbd9e5f2659 ("cryptodev: support device independent sessions")
> Cc: stable@dpdk.org
>
> Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
> Acked-by: Akhil Goyal <akhil.goyal@nxp.com>
Thanks Nipun, added upstream commit/removed stable tag and applied.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2019-12-18 11:22 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-12-18 4:45 [dpdk-stable] [PATCH 18.11] test/crypto: fix session init failure for wireless case Nipun Gupta
2019-12-18 11:22 ` Kevin Traynor
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).