From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 3E3494599B; Wed, 18 Sep 2024 07:40:10 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 134744027C; Wed, 18 Sep 2024 07:40:10 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by mails.dpdk.org (Postfix) with ESMTP id D3EEC40156 for ; Wed, 18 Sep 2024 07:40:07 +0200 (CEST) Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 48I545OU017797; Tue, 17 Sep 2024 22:40:06 -0700 Received: from nam10-bn7-obe.outbound.protection.outlook.com (mail-bn7nam10lp2043.outbound.protection.outlook.com [104.47.70.43]) by mx0a-0016f401.pphosted.com (PPS) with ESMTPS id 41qdwga705-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT); Tue, 17 Sep 2024 22:40:06 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=a/lOftuc1VZMq0jOACDRD7urGioNUcPJf5VbDFLnDs07FkUS3AhBGxSlYcwr17vH//DV3U6JMFtI8Y3+B6UBt1Y/QGC0Z5ZONnBmWdUEaPscmQMpvD0rfrAdPyOxWDpnnsyY/O7ybQTY5EW0NYBDboBQ6Y03eQia9jtT58nfYRxWPZWqMv7eMHWp1mXZv6S5Z1yV0L/AjEHfN2eAJwwuJo4RWhbwUEhLmbjDathMviM/KfTF2JwhIT/oRfxv58f+h6LCrIlvkjUcV9hBM8umObs2eO2DOeSjtVBqyop+0weJi9utCNAMzKSvBljrWd5MwxOaQXO75zVXhrf71J2uDA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=b60GNQMSmdPAKtFfUECXc0d3q7EF8TnoBpm1hXF3ngc=; b=bApbGS6u3BwZEExx2ibfGRuuT1CORjPHki5FfKUmh7qLRYAR0pNaJQrbrbzyb6uhAB2BR7LRnn0Js1WESCDHQ/0HMzJ0nL3358MY1W8jd9z0628yIoug/LAewo1jE63xfKnKdP8GsZ2hSfzSHfUD6XXnAjU0CmOt2R/Q2VLpMhz4v/e5l65pXig6b1ypmMSBQVQNA5/4eHLXs47y7epEKtHxB/VecDqMyxoUcblz272QL7zul60LHCDl3EJDbSpi5LMdhBnpPzp8XEHvNYZSZ4c62tE1Al01PN/Ocb7O+AnVET66vTTMNNoB2rk4C1zqJcbwvYmCHtEc0AezKbyLpg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=marvell.com; dmarc=pass action=none header.from=marvell.com; dkim=pass header.d=marvell.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=b60GNQMSmdPAKtFfUECXc0d3q7EF8TnoBpm1hXF3ngc=; b=WB+GKayGBbKN8E062/eQ1sD2aVskKw/olVOvxxkE8bVlGW11LnVqEyf845UiSEmKG13E0QDvWyR4814OgspuWXa+OsswX0mCHEcv4B5GWi8Cqrz7b2mEBiuad/5uCJasQn5xgfOnA9Oxd4OgVhBEeQvRgQa08YN73rTlSs7NVbU= Received: from CO6PR18MB4484.namprd18.prod.outlook.com (2603:10b6:5:359::9) by SA1PR18MB4646.namprd18.prod.outlook.com (2603:10b6:806:1d5::24) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7962.24; Wed, 18 Sep 2024 05:40:03 +0000 Received: from CO6PR18MB4484.namprd18.prod.outlook.com ([fe80::3c98:dd36:4897:a51d]) by CO6PR18MB4484.namprd18.prod.outlook.com ([fe80::3c98:dd36:4897:a51d%5]) with mapi id 15.20.7962.022; Wed, 18 Sep 2024 05:40:03 +0000 From: Akhil Goyal To: Vidya Sagar Velumuri , Fan Zhang CC: Jerin Jacob , Anoob Joseph , Vidya Sagar Velumuri , Aakash Sasidharan , Tejasree Kondoj , Gowrishankar Muthukrishnan , "dev@dpdk.org" Subject: RE: [PATCH v1 1/3] cryptodev: add queue pair reset API Thread-Topic: [PATCH v1 1/3] cryptodev: add queue pair reset API Thread-Index: AQHa9H4iQ4Z61LtgZEGfT0ofXCV6PrJdMT8w Date: Wed, 18 Sep 2024 05:40:03 +0000 Message-ID: References: <20240822102856.3965710-1-vvelumuri@marvell.com> In-Reply-To: <20240822102856.3965710-1-vvelumuri@marvell.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-publictraffictype: Email x-ms-traffictypediagnostic: CO6PR18MB4484:EE_|SA1PR18MB4646:EE_ x-ms-office365-filtering-correlation-id: 6ac81768-a591-42b2-99b3-08dcd7a45837 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|366016|376014|1800799024|38070700018; x-microsoft-antispam-message-info: =?us-ascii?Q?3E9CGT5L7RKlSeBkzr27QHLddVT+qkGXP9zjMP0OHJAa4XkQ+vpkwQ3payKm?= =?us-ascii?Q?6rVcsJMR6jacLV/a9AOLWi5nLFWMGOXKawyIEpdEn/MKV5wrrJCIr/dA67t9?= =?us-ascii?Q?Iicgj1MSXT+55ncfy7Iubt0kVWuqcFnSDBzyYPHg8jHT6UvnCTyENdQmOwv4?= =?us-ascii?Q?0S/syMBzZc5rZESuqFAQE7o3GOm35cadXuIqi4WoIQkeutxcROV/oGWkclX9?= =?us-ascii?Q?glfM2BRPV7WNGHH8ahJQhGYwHOK8H7oyjkEMzpIGuCaPsb0FyKIERvVKoV7p?= =?us-ascii?Q?/JfU9RZqhqU/38iwcauAj1gdc7m1e3M9ZjzxM8FzGaFkTcFBLCHyIdcItvdo?= =?us-ascii?Q?za1vJAXTbAJF5wceHmMrTBSHdzUjxk9le/JtJ4kHb3FCuf+LExAwpKQLhJRG?= =?us-ascii?Q?LsqxXtHwqwGnhU5mKEG9rq6B7sHyB5pJmFOH64TwdHdyhIEcmzAm2Pmh493l?= =?us-ascii?Q?C4C5eWu3SAUKbdt5r6XlpZ86SqZSLvCUiSaAKT+zkzPj+gj7jWD3dFeIKEbM?= =?us-ascii?Q?No2MniYy+1zvkKzrdnAvYiNp2oPRgMaGfhXxtEcPP/GLUmjqmjxAEaf0ncfF?= =?us-ascii?Q?LNFVa8ci5+7t6p/LPqUL/iyx8ZSEWGNaKO7Ns17GQwI7N/pOWXML2GphgbpZ?= =?us-ascii?Q?9lCGEviEG9Lu/g2vzl7bAhUCV0JK1YVfEOuxVSZqBvlNDhc5WVG+ja7U+11i?= =?us-ascii?Q?UKPW5M4RT2OyL6n7eZg002EcIu4D9V5t3YlJHdCEmUNT2E5q5iwgGekDrPez?= =?us-ascii?Q?VYbgyBXyxMO4HzrQq2CAHF3c9Yv7e8Y3ZGDyB12FK3Va/4Wl0nrDFISjaNRy?= =?us-ascii?Q?D5in6OZdkUtLbic9Bj0Ec0eBWTJlrKbQ716gWyANAmnnr+Yx6KR3mjhHWt7F?= =?us-ascii?Q?udg+YkB7CPmNQ18Apnc+vPuep9vmgyemZItFgPz49xAcxbm7A7idEUO4tC8M?= =?us-ascii?Q?Q1DVeH7p53jSnpiKyVVVhT0q4nLwyepAVZfiKa+5ToE4V4MM6h5zv4DLdyGo?= =?us-ascii?Q?uofpA381RWCNRvnoTFRsj+/dV8fHf1zyk2xxsd93il6OwvKeLe9mjSdYujss?= =?us-ascii?Q?0ap1DUVCq2O7mBjywP3hOoJNPjYajoEUgJHTyFDSofE5v7RUZwSHO884akfV?= =?us-ascii?Q?RBKpWPqcI/1vjj851jqL+KSIX3VLFESP58JU0eDHtK8gTl/kmbaeNgeT9XAT?= =?us-ascii?Q?OE53EsId4K5pvLndHBLLduGAyGfKnpAUSf8S0Ps4AFQPq1o9vUabxc73lb+Y?= =?us-ascii?Q?swEc5DBlEGZi4k5pqMS9h59jlVDWM9hKb47ovwj/fKfI9kgmS1AQbSapqIrK?= =?us-ascii?Q?Ievy1P7q9OpgZLUlrGUx1pc4wQmLHNati6p0d+pNZ1RlqJP8lfpWpJ7UNigz?= =?us-ascii?Q?/feC+ZiUKsV6nG5wqPDHtwLX4EhmoHecRawqCJ3gleyL81nzKw=3D=3D?= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:CO6PR18MB4484.namprd18.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(376014)(1800799024)(38070700018); DIR:OUT; SFP:1102; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?vyha+LLa3JTrpL2rlLegWsBUNqyrHHB9X1h1a+OmgzzCL5j4FeZapEwFJ0oV?= =?us-ascii?Q?EwPAYc+9KFqaKEF30XtIPWbTwlEHzpVbo+afYIL2DMlTXxy4nzAG7NJJF2+m?= =?us-ascii?Q?QjPU/s5ZGHTyHBZMufJjYyfcLIVKBNFbsLALtOndfbDIBsVoKfDsZw8eTrEO?= =?us-ascii?Q?ioRv06JINqvRRzBROZ1uz1q4wa1z1dZDUhppAp6+y0so4O8K7k6M2vvkAd/3?= =?us-ascii?Q?mMbi4dgnHGsY/1Z470RNkbDIGgMvXk/zZERSzUOvYZscvqJWevN56u3jUAGh?= =?us-ascii?Q?DUHUbtt/Jt3HjgpXTjRJ8gVVt7qzBvgTjZ2EcjOe5PKIOoHWMsrtwsUiiRFo?= =?us-ascii?Q?UQsP+jtN72Pr2pAsxxa1tNecXxkPNxT240nJT7fsh59T5/JZ/BraibIzasv0?= =?us-ascii?Q?l0bGnzic1IPW9mSII4w2zFxxW5O7ulzlnY5JIj00BgO83n0UWW15E+gBf07i?= =?us-ascii?Q?ryoaCUKWKJdbAilIYpZ5hUgthLhX1SnBLykIeFoqtpdMYGV5bzFFXBa7D4KR?= =?us-ascii?Q?5nC7jbtNLWSKD89RQYLRJyiyiSlWvbyOtBmHQnhFTQB8qbaCFEmn7h0pET2K?= =?us-ascii?Q?avQKx7EmzUqmFwa6THLY2gzXCbK/zq/RAfnC04+aCZjHsSI1WxcvBJjUj3S1?= =?us-ascii?Q?67H2vSNfpV62IYxQnWd3kiGkHSrtGYMGvUxgQSIK/UtllXB4EXfpk5Pxs1ZS?= =?us-ascii?Q?Ayywt3H63gTubgw9bZTs28F9AUn4O6EmTY42U34yfJP8Gru42Dh2MkG8jUmH?= =?us-ascii?Q?1yun4SD/wfvJbU9NBcdnPLfpV6xRKNI/Sd7i73UgGV154qTnyWxHfHvgMFXl?= =?us-ascii?Q?OOtMdy3MJIMcjlV6X76+0jOVjgwutBt1VEpS/blSyUtcT/UzId15HV2+3pIW?= =?us-ascii?Q?f6a6SirSTX+YkTYe26jQpWcDg+Ha60eEuEjI3UGJw86vjYReQbzd/4fyLB/s?= =?us-ascii?Q?HhxhGusiGdSLFXqPvGHh/9Pkc07jdv+q5y7npZj9nL6rQsQsMPSh6pdvTbd1?= =?us-ascii?Q?1zTic2x8eQicdf3InZ5t9yInFPCuN8YD2FEHv/FSq+rXTVLvkR77mHmmlTKG?= =?us-ascii?Q?gUE1RcjnBjNZCDvDTjpdA6pkcT2oKFWpa3ZQ2nEJpjhOzMIoKZn9vCmSXvAe?= =?us-ascii?Q?87ZN4G8m/8WnsNa/v6YkiEwNg3UY7sy1TmkBp0VWpmW72Y5/RN0V6HHIcdf7?= =?us-ascii?Q?4xSOGxmo7dypqa8cC0gMOAK6601/C9w5Tps1hiPF+cq0aOMNshjh3bIx4c2d?= =?us-ascii?Q?SLymTLMGK4zMl8EjavP73HTvVpKl6DvM1+0AJucKKe8GtkFzUVMUzQahp3D3?= =?us-ascii?Q?74XO0cEdEOIhfpxtzsBP82vLd8ou4CIyxjWzJbp+rY2gnYvdbSVPkk1aGIgs?= =?us-ascii?Q?oahd91DQqXwkrabPmGBQDkV82fd8h3fa7wljckXV5koI44XvjR8W07iA/q3+?= =?us-ascii?Q?YCL45vZ/tS6d71nEmN3FC/xHJUdewpSzEmMFVGZ7/dAIOjaLbDA/jai85DLX?= =?us-ascii?Q?UnL75pKHtJ423IhzGkcZjFDqswkC4dIGzJDT/FuBvNDA7JzRPQGFt7EKKqOd?= =?us-ascii?Q?uRK2Dp4Lez9WBbD6g+YToS0P08y5rEEV3KhjrcdF?= Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: marvell.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: CO6PR18MB4484.namprd18.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 6ac81768-a591-42b2-99b3-08dcd7a45837 X-MS-Exchange-CrossTenant-originalarrivaltime: 18 Sep 2024 05:40:03.4352 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 70e1fb47-1155-421d-87fc-2e58f638b6e0 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: e6onYIH88/H0l1/7pmqloyGldW2hmTwL3DgpwSEeW5UfxjbCvvCl1LWQSUzJlwnI4v52mFlsrPHw+9TQlGGoug== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA1PR18MB4646 X-Proofpoint-GUID: -RShEIjc-3HAsgXVWYKswfoMdn6CCNW_ X-Proofpoint-ORIG-GUID: -RShEIjc-3HAsgXVWYKswfoMdn6CCNW_ X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.60.29 definitions=2024-09-06_09,2024-09-06_01,2024-09-02_01 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org > Subject: [PATCH v1 1/3] cryptodev: add queue pair reset API >=20 > The API will reset the specific queue pair of a cryptodev. > The current API, cryptodev_queue_pair_setup(), requires the cryptodev > to be stopped before reconfiguring any queue pair. Stopping the > cryptodev in one thread can result in a segmentation fault when > multiple queues are used for enqueue and dequeue operations. >=20 > On supported PMDs, the cryptodev_queue_pair_reset() will > reconfigure/reset the queue pair without affecting other queues or > the cryptodev state. >=20 > The caller should ensure that there are no enqueue or dequeue operations > ongoing on that queue and that there are no inflight packets before > calling this API. >=20 > Signed-off-by: Vidya Sagar Velumuri Acked-by: Akhil Goyal Please update release notes. >=20 > diff --git a/lib/cryptodev/cryptodev_pmd.h b/lib/cryptodev/cryptodev_pmd.= h > index 6c114f7181..311ae63abb 100644 > --- a/lib/cryptodev/cryptodev_pmd.h > +++ b/lib/cryptodev/cryptodev_pmd.h > @@ -290,6 +290,22 @@ typedef int (*cryptodev_queue_pair_setup_t)(struct > rte_cryptodev *dev, > typedef int (*cryptodev_queue_pair_release_t)(struct rte_cryptodev *dev, > uint16_t qp_id); >=20 > +/** > + * Reset or reconfigure a queue pair for a device. > + * > + * @param dev Crypto device pointer > + * @param qp_id Queue pair index > + * @param qp_conf Queue configuration structure > + * @param socket_id Socket index > + * > + * @return > + * - 0: on success. > + * - ENOTSUP: if crypto device does not support the operation. > + */ > +typedef int (*cryptodev_queue_pair_reset_t)(struct rte_cryptodev *dev, > + uint16_t qp_id, const struct rte_cryptodev_qp_conf *qp_conf, > + int socket_id); > + > /** > * Create a session mempool to allocate sessions from > * > @@ -476,6 +492,8 @@ struct rte_cryptodev_ops { > /**< Set up a device queue pair. */ > cryptodev_queue_pair_release_t queue_pair_release; > /**< Release a queue pair. */ > + cryptodev_queue_pair_reset_t queue_pair_reset; > + /**< Reset a queue pair. */ >=20 > cryptodev_sym_get_session_private_size_t sym_session_get_size; > /**< Return private session. */ > diff --git a/lib/cryptodev/cryptodev_trace.h b/lib/cryptodev/cryptodev_tr= ace.h > index 935f0d564b..633f17afe1 100644 > --- a/lib/cryptodev/cryptodev_trace.h > +++ b/lib/cryptodev/cryptodev_trace.h > @@ -58,6 +58,16 @@ RTE_TRACE_POINT( > rte_trace_point_emit_ptr(conf->mp_session); > ) >=20 > +RTE_TRACE_POINT( > + rte_cryptodev_trace_queue_pair_reset, > + RTE_TRACE_POINT_ARGS(uint8_t dev_id, uint16_t queue_pair_id, > + const struct rte_cryptodev_qp_conf *conf, int socket_id), > + rte_trace_point_emit_u8(dev_id); > + rte_trace_point_emit_u16(queue_pair_id); > + rte_trace_point_emit_u32(conf->nb_descriptors); > + rte_trace_point_emit_int(socket_id); > +) > + > RTE_TRACE_POINT( > rte_cryptodev_trace_sym_session_pool_create, > RTE_TRACE_POINT_ARGS(const char *name, uint32_t nb_elts, > diff --git a/lib/cryptodev/cryptodev_trace_points.c > b/lib/cryptodev/cryptodev_trace_points.c > index 7403412553..6f37780595 100644 > --- a/lib/cryptodev/cryptodev_trace_points.c > +++ b/lib/cryptodev/cryptodev_trace_points.c > @@ -21,6 +21,9 @@ RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_close, > RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_queue_pair_setup, > lib.cryptodev.queue.pair.setup) >=20 > +RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_queue_pair_reset, > + lib.cryptodev.queue.pair.reset) > + > RTE_TRACE_POINT_REGISTER(rte_cryptodev_trace_sym_session_pool_create, > lib.cryptodev.sym.pool.create) >=20 > diff --git a/lib/cryptodev/rte_cryptodev.c b/lib/cryptodev/rte_cryptodev.= c > index 682c9f49d0..281ca51cf3 100644 > --- a/lib/cryptodev/rte_cryptodev.c > +++ b/lib/cryptodev/rte_cryptodev.c > @@ -1222,6 +1222,30 @@ rte_cryptodev_queue_pairs_config(struct > rte_cryptodev *dev, uint16_t nb_qpairs, > return 0; > } >=20 > +int > +rte_cryptodev_queue_pair_reset(uint8_t dev_id, uint16_t queue_pair_id, > + const struct rte_cryptodev_qp_conf *qp_conf, int socket_id) > +{ > + struct rte_cryptodev *dev; > + > + if (!rte_cryptodev_is_valid_dev(dev_id)) { > + CDEV_LOG_ERR("Invalid dev_id=3D%" PRIu8, dev_id); > + return -EINVAL; > + } > + > + dev =3D &rte_crypto_devices[dev_id]; > + if (queue_pair_id >=3D dev->data->nb_queue_pairs) { > + CDEV_LOG_ERR("Invalid queue_pair_id=3D%d", queue_pair_id); > + return -EINVAL; > + } > + > + if (*dev->dev_ops->queue_pair_reset =3D=3D NULL) > + return -ENOTSUP; > + > + rte_cryptodev_trace_queue_pair_reset(dev_id, queue_pair_id, qp_conf, > socket_id); > + return (*dev->dev_ops->queue_pair_reset)(dev, queue_pair_id, qp_conf, > socket_id); > +} > + > int > rte_cryptodev_configure(uint8_t dev_id, struct rte_cryptodev_config *con= fig) > { > diff --git a/lib/cryptodev/rte_cryptodev.h b/lib/cryptodev/rte_cryptodev.= h > index bec947f6d5..e0fc35db2a 100644 > --- a/lib/cryptodev/rte_cryptodev.h > +++ b/lib/cryptodev/rte_cryptodev.h > @@ -840,6 +840,35 @@ int > rte_cryptodev_queue_pair_setup(uint8_t dev_id, uint16_t queue_pair_id, > const struct rte_cryptodev_qp_conf *qp_conf, int socket_id); >=20 > +/** > + * @warning > + * @b EXPERIMENTAL: this API may change without prior notice. > + * > + * Reset a queue pair for a device. > + * The caller of this API must ensure that, there are no enqueues to the= queue > and there are no > + * pending/inflight packets in the queue when the API is called. > + * The API can reconfigure the queue pair when the queue pair configurat= ion > data is provided. > + * > + * @param dev_id The identifier of the device. > + * @param queue_pair_id The index of the queue pairs to set up. The > value must be in the > + * range [0, nb_queue_pair - 1] previously supplied > to > + * rte_cryptodev_configure(). > + * @param qp_conf The pointer to configuration data to be used for > the queue pair. > + * It should be NULL, if the API is called from an > interrupt context. > + * @param socket_id The *socket_id* argument is the socket > identifier in case of NUMA. > + * The value can be *SOCKET_ID_ANY* if there is > no NUMA constraint > + * for the DMA memory allocated for the queue > pair. > + * > + * @return > + * - 0: Queue pair is reset successfully. > + * - ENOTSUP: If the operation is not supported by the PMD. > + * - <0: Queue pair reset failed > + */ > +__rte_experimental > +int > +rte_cryptodev_queue_pair_reset(uint8_t dev_id, uint16_t queue_pair_id, > + const struct rte_cryptodev_qp_conf *qp_conf, int socket_id); > + > /** > * Get the status of queue pairs setup on a specific crypto device > * > diff --git a/lib/cryptodev/version.map b/lib/cryptodev/version.map > index fdac0d876e..eec06d9939 100644 > --- a/lib/cryptodev/version.map > +++ b/lib/cryptodev/version.map > @@ -87,6 +87,9 @@ EXPERIMENTAL { >=20 > # added in 24.03 > __rte_cryptodev_trace_qp_depth_used; > + > + # added in 24.07 > + rte_cryptodev_queue_pair_reset; > }; >=20 > INTERNAL { > -- > 2.25.1