Hi Akhil, >-----Original Message----- >From: Akhil Goyal <gak...@marvell.com> >Sent: Monday 18 October 2021 22:35 >To: dev@dpdk.org >Cc: tho...@monjalon.net; david.march...@redhat.com; >hemant.agra...@nxp.com; ano...@marvell.com; De Lara Guarch, Pablo ><pablo.de.lara.gua...@intel.com>; Trahe, Fiona <fiona.tr...@intel.com>; >Doherty, Declan <declan.dohe...@intel.com>; ma...@nvidia.com; >g.si...@nxp.com; Zhang, Roy Fan <roy.fan.zh...@intel.com>; >jianjay.z...@huawei.com; asoma...@amd.com; ruifeng.w...@arm.com; >Ananyev, Konstantin <konstantin.anan...@intel.com>; Nicolau, Radu ><radu.nico...@intel.com>; ajit.khapa...@broadcom.com; >rnagadhee...@marvell.com; adwiv...@marvell.com; Power, Ciara ><ciara.po...@intel.com>; Wang, Haiyue <haiyue.w...@intel.com>; >jiawe...@trustnetic.com; jianw...@trustnetic.com; Akhil Goyal ><gak...@marvell.com> >Subject: [PATCH v3 0/8] crypto/security session framework rework > >As discussed in last release deprecation notice, crypto and security session >framework are reworked to reduce the need of two mempool objects and >remove the requirement to expose the rte_security_session and >rte_cryptodev_sym_session structures. >Design methodology is explained in the patch description. > >Similar work will need to be done for asymmetric sessions as well. Asymmetric >session need another rework and is postponed to next release. Since it is still >in experimental stage, we can modify the APIs in next release as well. > >The patches are compilable with all affected PMDs and tested with dpdk-test >and test-crypto-perf app on CN9k platform. <snip>
I am seeing test failures for cryptodev_scheduler_autotest: + Tests Total : 638 + Tests Skipped : 280 + Tests Executed : 638 + Tests Unsupported: 0 + Tests Passed : 18 + Tests Failed : 340 The error showing for each testcase: scheduler_pmd_sym_session_configure() line 487: unable to config sym session CRYPTODEV: rte_cryptodev_sym_session_init() line 1743: dev_id 2 failed to configure session details I believe the problem happens in scheduler_pmd_sym_session_configure. The full sess object is no longer accessible in here, but it is required to be passed to rte_cryptodev_sym_session_init. The init function expects access to sess rather than the private data, and now fails as a result. static int scheduler_pmd_sym_session_configure(struct rte_cryptodev *dev, struct rte_crypto_sym_xform *xform, void *sess, rte_iova_t sess_iova __rte_unused) { struct scheduler_ctx *sched_ctx = dev->data->dev_private; uint32_t i; int ret; for (i = 0; i < sched_ctx->nb_workers; i++) { struct scheduler_worker *worker = &sched_ctx->workers[i]; ret = rte_cryptodev_sym_session_init(worker->dev_id, sess, xform); if (ret < 0) { CR_SCHED_LOG(ERR, "unable to config sym session"); return ret; } } return 0; } Thanks, Ciara