From patchwork Mon Jun 1 18:02:29 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Akhil Goyal X-Patchwork-Id: 70726 X-Patchwork-Delegate: gakhil@marvell.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id E4CDAA04EF; Mon, 1 Jun 2020 20:03:12 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id C29491BFF5; Mon, 1 Jun 2020 20:03:12 +0200 (CEST) Received: from inva021.nxp.com (inva021.nxp.com [92.121.34.21]) by dpdk.org (Postfix) with ESMTP id 18F491BFE2 for ; Mon, 1 Jun 2020 20:03:11 +0200 (CEST) Received: from inva021.nxp.com (localhost [127.0.0.1]) by inva021.eu-rdc02.nxp.com (Postfix) with ESMTP id 9ABD52007A4; Mon, 1 Jun 2020 20:03:10 +0200 (CEST) Received: from invc005.ap-rdc01.nxp.com (invc005.ap-rdc01.nxp.com [165.114.16.14]) by inva021.eu-rdc02.nxp.com (Postfix) with ESMTP id C211E20058B; Mon, 1 Jun 2020 20:03:08 +0200 (CEST) Received: from lsv03273.swis.in-blr01.nxp.com (lsv03273.swis.in-blr01.nxp.com [92.120.147.113]) by invc005.ap-rdc01.nxp.com (Postfix) with ESMTP id 7BA70402DF; Tue, 2 Jun 2020 02:03:06 +0800 (SGT) From: Akhil Goyal To: dev@dpdk.org Cc: hemant.agrawal@nxp.com, Akhil Goyal Date: Mon, 1 Jun 2020 23:32:29 +0530 Message-Id: <20200601180229.26566-2-akhil.goyal@nxp.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20200601180229.26566-1-akhil.goyal@nxp.com> References: <20200601180229.26566-1-akhil.goyal@nxp.com> X-Virus-Scanned: ClamAV using ClamSMTP Subject: [dpdk-dev] [PATCH 2/2] test/crypto: enable hfn override in PDCP cases X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" As most of the real woeld use cases need HFN value to be updated on per packet basis, changing the default testing with HFN override enabled for all PDCP cases. Signed-off-by: Akhil Goyal --- app/test-crypto-perf/cperf_ops.c | 10 +++++++--- app/test/test_cryptodev.c | 13 +++++++++++-- 2 files changed, 18 insertions(+), 5 deletions(-) diff --git a/app/test-crypto-perf/cperf_ops.c b/app/test-crypto-perf/cperf_ops.c index 97584ceed..847982219 100644 --- a/app/test-crypto-perf/cperf_ops.c +++ b/app/test-crypto-perf/cperf_ops.c @@ -25,6 +25,10 @@ cperf_set_ops_security(struct rte_crypto_op **ops, struct rte_security_session *sec_sess = (struct rte_security_session *)sess; + uint32_t *per_pkt_hfn = rte_crypto_op_ctod_offset(ops[i], + uint32_t *, iv_offset); + *per_pkt_hfn = 0x1; + ops[i]->status = RTE_CRYPTO_OP_STATUS_NOT_PROCESSED; rte_security_attach_session(ops[i], sec_sess); sym_op->m_src = (struct rte_mbuf *)((uint8_t *)ops[i] + @@ -529,16 +533,15 @@ cperf_create_session(struct rte_mempool *sess_mp, cipher_xform.cipher.algo = options->cipher_algo; cipher_xform.cipher.op = options->cipher_op; cipher_xform.cipher.iv.offset = iv_offset; + cipher_xform.cipher.iv.length = 4; /* cipher different than null */ if (options->cipher_algo != RTE_CRYPTO_CIPHER_NULL) { cipher_xform.cipher.key.data = test_vector->cipher_key.data; cipher_xform.cipher.key.length = test_vector->cipher_key.length; - cipher_xform.cipher.iv.length = test_vector->cipher_iv.length; } else { cipher_xform.cipher.key.data = NULL; cipher_xform.cipher.key.length = 0; - cipher_xform.cipher.iv.length = 0; } /* Setup Auth Parameters */ @@ -576,8 +579,9 @@ cperf_create_session(struct rte_mempool *sess_mp, .domain = options->pdcp_domain, .pkt_dir = 0, .sn_size = options->pdcp_sn_sz, - .hfn = 0x1, + .hfn = 0x0, .hfn_threshold = 0x70C0A, + .hfn_ovrd = 1, } }, .crypto_xform = &cipher_xform }; diff --git a/app/test/test_cryptodev.c b/app/test/test_cryptodev.c index 8f631468b..f4ed89c1c 100644 --- a/app/test/test_cryptodev.c +++ b/app/test/test_cryptodev.c @@ -7385,7 +7385,8 @@ test_pdcp_proto_SGL(int i, int oop, ut_params->cipher_xform.cipher.key.data = pdcp_test_crypto_key[i]; ut_params->cipher_xform.cipher.key.length = pdcp_test_params[i].cipher_key_len; - ut_params->cipher_xform.cipher.iv.length = 0; + ut_params->cipher_xform.cipher.iv.length = 4; + ut_params->cipher_xform.cipher.iv.offset = IV_OFFSET; /* Setup HMAC Parameters if ICV header is required */ if (pdcp_test_params[i].auth_alg != 0) { @@ -7410,8 +7411,12 @@ test_pdcp_proto_SGL(int i, int oop, .domain = pdcp_test_params[i].domain, .pkt_dir = pdcp_test_packet_direction[i], .sn_size = pdcp_test_data_sn_size[i], - .hfn = pdcp_test_hfn[i], + .hfn = 0, /** + * hfn can be set as pdcp_test_hfn[i] + * if hfn_ovrd is not set + */ .hfn_threshold = pdcp_test_hfn_threshold[i], + .hfn_ovrd = 1, } }, .crypto_xform = &ut_params->cipher_xform }; @@ -7438,6 +7443,10 @@ test_pdcp_proto_SGL(int i, int oop, goto on_err; } + uint32_t *per_pkt_hfn = rte_crypto_op_ctod_offset(ut_params->op, + uint32_t *, IV_OFFSET); + *per_pkt_hfn = pdcp_test_hfn[i]; + rte_security_attach_session(ut_params->op, ut_params->sec_session); /* set crypto operation source mbuf */