From patchwork Fri Mar 17 08:45:09 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Akhil Goyal X-Patchwork-Id: 21833 X-Patchwork-Delegate: pablo.de.lara.guarch@intel.com Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id 778865A8D; Fri, 17 Mar 2017 09:45:34 +0100 (CET) Received: from NAM01-SN1-obe.outbound.protection.outlook.com (mail-sn1nam01on0058.outbound.protection.outlook.com [104.47.32.58]) by dpdk.org (Postfix) with ESMTP id 0A95F1396 for ; Fri, 17 Mar 2017 09:45:31 +0100 (CET) Received: from BN6PR03CA0012.namprd03.prod.outlook.com (10.168.230.150) by BL2PR03MB178.namprd03.prod.outlook.com (10.255.230.150) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.977.11; Fri, 17 Mar 2017 08:45:30 +0000 Received: from BN1BFFO11FD017.protection.gbl (2a01:111:f400:7c10::1:110) by BN6PR03CA0012.outlook.office365.com (2603:10b6:404:23::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.977.11 via Frontend Transport; Fri, 17 Mar 2017 08:45:30 +0000 Authentication-Results: spf=fail (sender IP is 192.88.168.50) smtp.mailfrom=nxp.com; nxp.com; dkim=none (message not signed) header.d=none;nxp.com; dmarc=fail action=none header.from=nxp.com; Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.168.50 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.168.50; helo=tx30smr01.am.freescale.net; Received: from tx30smr01.am.freescale.net (192.88.168.50) by BN1BFFO11FD017.mail.protection.outlook.com (10.58.144.80) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.977.7 via Frontend Transport; Fri, 17 Mar 2017 08:45:29 +0000 Received: from netperf2.ap.freescale.net ([10.232.133.164]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id v2H8jPG8022524; Fri, 17 Mar 2017 01:45:26 -0700 From: To: CC: , , , , Akhil Goyal Date: Fri, 17 Mar 2017 14:15:09 +0530 Message-ID: <20170317084510.2120-1-akhil.goyal@nxp.com> X-Mailer: git-send-email 2.9.3 X-EOPAttributedMessage: 0 X-Matching-Connectors: 131342139300925691; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.168.50; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(336005)(39840400002)(39850400002)(39450400003)(39400400002)(39410400002)(39380400002)(39860400002)(2980300002)(1110001)(1109001)(339900001)(189002)(199003)(9170700003)(81166006)(8936002)(305945005)(77096006)(1076002)(356003)(6666003)(6916009)(54906002)(5660300001)(86152003)(8656002)(53936002)(86362001)(33646002)(5003940100001)(2351001)(2876002)(2906002)(50986999)(50226002)(47776003)(105606002)(106466001)(104016004)(8676002)(85426001)(189998001)(36756003)(4326008)(48376002)(5890100001)(50466002)(38730400002)(110136004); DIR:OUT; SFP:1101; SCL:1; SRVR:BL2PR03MB178; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; MLV:ovrnspm; MX:1; A:1; PTR:InfoDomainNonexistent; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BN1BFFO11FD017; 1:MdDOnJ2+qsI4TxcfUqWZFui7hRI4UcCnYMjlhIZg1EMSr9184CBKwf2B+dus3jakBFovhnPfnmXRGAoZ/yAirzKCOzGTxjMQqtr7Oj26DnWQcuhUxV3INvYs58MSiA9NxhRlNsAE1GS9gR06BX1I7MhQk3JbjT2YDjE2/t7Sr/H02hddnRCCSgwZMln4qPI5GqH8LzVcnKvARvs2Fjwpg3jtuPLwCgCgkLw+cAxZPD1K4amWEjyskv/6ZT6Ffi6bRvzeUhOXK8/v0ycwi8Agl1x695zbJDH3w87FmHpZqg0I4IL5IHSbgP2MzFMPj0zGFlqSIYzK8cg1CMlt7l3x2UNVMF3sS/s+ABkJSN0EsCxBnGDjyLy9hxdveocYKZ07iDmsUsws2wSrqYI2NFyJrBdwnKwWo6BS245EI27a1gOwl9NYeWIoV/Zo6vLmth2tz0YySMmzeljfR6Y6jRqY4b4TCgXEUu4QdAbUv4uck9XLfU+tYmXoTcvknRlOSPTRJvJdM0OmkxMN4hs/B4+JNo3ecYjIVbZOb8bFkZJXdvOOJaoYnB5RosExOOtW56m0MBPN70WGFP/jA863JNUt2yaFESCZdzWOhPzQ6K8s99sfpZyQriv0wKviBiFlhV01PvDajn8AM6nGop1tMGJF61Lp6PLHoawDBgOylWZxnzocT6c0AjTb/n7qwY4ArZhpjDA+ySlp6zq3uVa6oDqEwdEJyeJW21xFt/CyrsdWsQZrt2cBTAoVcUmQihNqMRuR MIME-Version: 1.0 X-MS-Office365-Filtering-Correlation-Id: f6f0216f-d91c-471e-ef9c-08d46d11f786 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:BL2PR03MB178; X-Microsoft-Exchange-Diagnostics: 1; BL2PR03MB178; 3:S+OkR/M6f/GDtVpSGccirovwEAv6SfClZb2DDaqP1yIzsk46PaE+rFcemTXamtMep0wW4kCTDt0deZFys1mb++l48tJ1DH3s/L9uE3XR29uyLLNPLcNlfv4zsdlK53Jw2stqB+1h9iPVEF8ELCINfZQOPTUGv1b6h52UyPmiXpI6WvnrjC9qr1ZiNuBnw8uhufb6muGGbIw/MMOWTLeo+H5C9sfMP++4YMqZ8RXE1M+6abi8ZmZuOnYjzgChWiCS0Kuf2u92KLwp8drg12BJiMIOl23ZuB0uHubpRfiGPOtPH/FNvHdcgMH9iO20UDqetoRJhcMjMPUMJmLSuCJULIh7P44WUpcIZ1uJiCsImcyQY9js4sppFtGdNWTRibCL; 25:GUw0AoO1agK8yes1hClh+hQ3vU+WUv2agw3iRJOGX12ZP4MoA34TYLAruayOamn8lNeXF3NYi3JqO3asmVU1sLePqZYzkaVhxWU92tP5ohPIJevQYiu7DrbgA8QHeserF8HiVKUy2e2ch5y/cM2LnTuWeKn4t2npjUfA58lPaNllGT8DLgfIkMeANvfxkZickVaRoe0gpuIUXCS83g50x8yuHXHTMgSAfkzjT73IggoaiCvrRwlhA+7mZPcyJYbItNqigQo27LpEu044y3IThh4x3u+4tY6qZ+RhFbZQ4Rou3hgk6g9hrvCcKCi4p+SCpivoO3b/6c8J93TbMbMG35zrG4jZIHPbA6cK2pLpNcTXi1ORNDvESXjjbZjG5v9g0LapBz+QV0QezU4T9gJURz90njzxwIwvahfj5bpiXZTpC3Y5KBzenxp+NGvDnyv7vkvozamynAFOPeOYury8EQ== X-Microsoft-Exchange-Diagnostics: 1; BL2PR03MB178; 31:OXqa617u5ziK35c0S2MldCC/eCI/qxP4/tHJ6V6OWBXNV/PwM5mWPPsllQjk0sby4XdJNLHpoUMuhLeHtjQ4xGGy2krp9YDx4GXi4XM61/t80DhC3uqm4rDgWAeIzxsE3XniyzddrDnVRr6EqDxMi17k4W5pC5813rr863OlZ05tojQ+0OCifrJNqs6qP6VSZrcETseU2IiA12+ubPtNYx9eZ0D31o9titWlQcTmHCCSXoYnyWqTyeJZc6/c0nT7fXEcs8id/XhZbLyiQaz3Sw== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6095060)(601004)(2401047)(13024025)(13015025)(5005006)(13018025)(13017025)(8121501046)(13023025)(10201501046)(3002001)(6055026)(6096035)(20161123559025)(20161123556025)(20161123565025)(20161123563025)(20161123561025); SRVR:BL2PR03MB178; BCL:0; PCL:0; RULEID:(400006); SRVR:BL2PR03MB178; X-Microsoft-Exchange-Diagnostics: 1; BL2PR03MB178; 4:Lg8czbbuUe83x0PzS5+7Aavb6LWijkJ3ExtyCMD2ALYa2TxVVk0W84/+KEVHrObL84AltcUh0WAOSpzASNR3QDcSzd5Kyae6QtPOrkpYHb0ct8GRILEYQujO/9o5Drxnjf9OrvzHm2mqGX1ySbk5JtbWZ5N2TyH7TULPoN999nW/k0bQ8dKwYETp0n+rjTMfmMtmveR793//24Un1ozzNB1QTGy3/TM/F5K3YtPGLwULMDbfyVSe70sxZw+nnCfZZ89KHIMGuSthuUli1kieQaQca5DSq7ti8opI3ymB4s634Npe1byPrfrFV255xoj0Y3yFxcI2CS92oSiHkJoH/dysx9SHXbSfXNLr6348w/4jevu6nHCstL5+RKCCQPtElvC/b5DKkMrJY5QivhunTkGK9VyNpTWZefA+2N00tMMXk7tFamyKVU9JWv0dItptJsBdRnqGFUMNuQB5o2vFoo/MprEmMIpNbI43UPqwvfO3jcp4CCIXs0+otxHL2DvVEAti+zK1h1Vo0n/VwDXvtOp68d7TqtrRqfjIIkTijHDCdUiijDnV5Ek7xhXEtQ7HxgMILoHsfV0n+qcEikR1VUMpfORqMuY3GDHPIvMxzppb62qeD0Y31+1mzKELWcTx5JGZkpVkDBzQRJfdJJkKQ5RqSIE2LA8P/tgNRz45qnwN4hGlKK0IbT4fXawmCL/31YbdH5WJNy2F7LYq3w6qEBl/n8L7zYx19nnDStZrv0NJy8YQiKat6NL017HOYU0P X-Forefront-PRVS: 0249EFCB0B X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BL2PR03MB178; 23:59Cjr0Cr7ZrLQbY7dZqHDsWdAn3Df8d3KmZqWLArW1?= MCSUFl44NkqFXU2plCcmUU+8YboD/E6UZh5Fl8U4B6Hu1rlAS2n98Agj6xOw38uGKrZpXf6XgH7O8S4ns5qZ2fil78tyGIyTezwY9paNd9w/PK+W0EZ9XQqzbXwnm7pazpleHBvgyjYYHVbaS8p1ciHGv520S74ic8HBnJJzDzKEozak9LKKoRVUPWE9ucfzQIzuiDAkLPp752ek+jDg17yMIQFUFJ+y46DNMsBNk6NZvhXgo9o57creSr6GV31pCoWSUOKpIBLwR5FfQbAHKSBaFfB2mz1oHdCZH3eFPj2xRAGd/c+FVKgb1aOejoysG5WMYlTY7Q4eJNbbd1xe0c1UhnSnou3J4OplEbDsuXfbASQhkyNm2iE+ZeT0Q2hcmO0xZIAHzkPU0xIEc/vOLttB/DIt9aYGKznbYHFCieMiad5WLi4sXrKAujz8uex59STjXwMfW6v6AEy40yXqhcotK3LZ4QKoMyFVqMn3RRdUvR6e3hcNhI51AaE+2w7kMMmdq+cGV9E+rocSLI0M+k8h6woP4yB/m5tNmuo0NhYA21V0JoTTaFWgyxFNHJpCFPA61NAmw2zYoY/p0xrzlmv1vqkcU9OXQoM87JXzOfjROx7sMOXdTFZ61jW157jadLUilR/loLW470s6D7nZti3P0tgxJwfu0eZ6BCZp1KL3QZQirYrvjtPznXVq2E1OVYizCUjnKaDK/a6tPFAwxRbsoAcUpXndSNYH/ur/0mRIPDOVqTonxyK1QoOBMhhZ18D8tYb4FxXa6A7aEzf/n0rG57xVygI4Q2i5VaiCZvTVmVzJiaXpQsFQM2tsw97Dkt1NN/Tm2RuKD7PdwrL1GdCmrshscRUZ3s8YXkEDVI8uDQxsp5gSXfpWolVG58XhRaEQLjCSw1Vt9UaZiRDOAXUnDQZZoFa7pTJywIoUYuCXy3qHUDsVoNqyNtFdKdhQtOVF6M4+L6UMWJHg47UECzAhwXGT0ml15G/XNVRQGgOmFbfaXXcgfd9++IdFbCI1MQNTZwpFGdEdJNUPket3vK5J+2I/Y1HrU8E07x3qf1NIPMKAHUjpxoNNWrNQqchoUX+Qdk8evZtjXyhECNFmCEfkAr7j/y5s7gCRQsCBzgciaLS7LRpinM2iRBv0ZlsKJKoO09DwhjLA67pYVneJFx8IcxE8qsB8QPCd82gx1NarB7maeYQX3n8RtLwrH47IY= X-Microsoft-Exchange-Diagnostics: 1; BL2PR03MB178; 6:btOQHTonBRgC3Bf/Ztp4zdHQBHCz7lZIt5LGHTMldV8rVKa/2POv5iTa4aU7k/2RfnKmTTd/MOKwgax8bpaUtpYei7y/UjysKejypXcvv777N710jWjXP3I2vEqKXW9+I21TU0KWlNF8R9H23SfvxnN5HCtq7G/NvCBpZ/9Om8+lNrp66aeXiphE4xDEFhPh4fqlVpVTZtP1TvEaYjDGzex0QRIrSvHTq7XvXxEwmoWjMjRGOF85qs3AZxSd/PIik0kzfP8c6zaTBSvTaBeg8Wgm+6n/eimLgyV+AhjoMPl7u9NOLaWVS6n1ANf+eqssdSqGm1JDIN6DChwn5rP42N7neBOG/PY+6OkgT8HgV9O6g5ebU07qxwEbs7WH2A9eM+g7its2wO5TT5xAeYsYshOqLA8YGqzaBzjfi8jnTik=; 5:ZEr5KqXeGKpR24FK69u9K+kJYGwhYr0laW3cLjU7HIyLoVU2oEErpBOeW+F29YP69B8bZ7FbkxmPwyPYonTeLs4a/AKuNL7Y8NzokFrs6haf2y0Wdw9vVABLhvXTdJJVHJZs0mCzB5b1bVi0S+gT+x5n0DVRsYF28rqaHhbnCVQUor577ET3eAaG3eA+qza8; 24:25XcZSXB4R6s3g5BolX8YvRQwyb/XYVBjsBGx5384EjiyZh2dDuDdcoIzACdOsoRAGxI+eGsoTPTtdkh564DTJrPrcQ/X/aNgkKEAm56NFQ= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BL2PR03MB178; 7:/IbvyedikC0fHa42Xkspx4Pku6OtHpBvevwseNTqWJd7ldNUs8INm1kMjoKRq4v7pLqz6rJ+jLiboygIffmtRPXAyPE8/LxMC5zFN5JpL7UlbRKKFjON6S6i0tby+stG1EeSrbpgzrILoMjtGptC25GL4RXgaM3KhB5JklJIkxRErSMKqorVL/oSzWnUzC3C26TW/lHsjOAFDxcwVqlheiga7tZMZCe5gTx1ob2Dw59jc86+eG+puFGs4qFjjtCL4bJN1gI92/4wDtFTjZz6V15lWE4Zcs0WKRUv0nZhCDti5dce+/NQhKGlG3Kc0vfu7HSba7GLz1kUMyL6zz2nhQ== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Mar 2017 08:45:29.8897 (UTC) X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e; Ip=[192.88.168.50]; Helo=[tx30smr01.am.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BL2PR03MB178 Subject: [dpdk-dev] [PATCH 1/2] cryptodev: add api for attach-detach session with queue pair 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" From: Akhil Goyal HW based crypto drivers may only support limited number of sessions per queue pair. This requires support for attaching sessions to specific queue pair. New APIs are introduced to attach/detach a session with/from a particular queue pair. These are optional APIs. Application can call attach API after creating a session and can call detach API before deleting a session. Application needs to check if max_nb_sessions_per_qp > 0, then it should call the attach API. max_nb_sessions_per_qp = 0 means infinite sessions per qp Signed-off-by: Akhil Goyal --- lib/librte_cryptodev/rte_cryptodev.c | 41 ++++++++++++++++++++++++++ lib/librte_cryptodev/rte_cryptodev.h | 27 +++++++++++++++++ lib/librte_cryptodev/rte_cryptodev_pmd.h | 29 ++++++++++++++++++ lib/librte_cryptodev/rte_cryptodev_version.map | 2 ++ 4 files changed, 99 insertions(+) diff --git a/lib/librte_cryptodev/rte_cryptodev.c b/lib/librte_cryptodev/rte_cryptodev.c index 0ac23ed..f1eabd0 100644 --- a/lib/librte_cryptodev/rte_cryptodev.c +++ b/lib/librte_cryptodev/rte_cryptodev.c @@ -1393,6 +1393,47 @@ rte_cryptodev_sym_session_create(uint8_t dev_id, return sess; } +void +rte_cryptodev_queue_pair_attach_sym_session(uint16_t qp_id, + struct rte_cryptodev_sym_session *sess) +{ + struct rte_cryptodev *dev; + + if (!rte_cryptodev_pmd_is_valid_dev(sess->dev_id)) { + CDEV_LOG_ERR("Invalid dev_id=%d", sess->dev_id); + return; + } + + dev = &rte_crypto_devices[sess->dev_id]; + + RTE_FUNC_PTR_OR_RET(*dev->dev_ops->qp_attach_session); + if (dev->dev_ops->qp_attach_session(dev, qp_id, sess->_private)) { + CDEV_LOG_ERR("dev_id %d failed to attach qp: %d with session", + sess->dev_id, qp_id); + return; + } +} + +void +rte_cryptodev_queue_pair_detach_sym_session(uint16_t qp_id, + struct rte_cryptodev_sym_session *sess) +{ + struct rte_cryptodev *dev; + + if (!rte_cryptodev_pmd_is_valid_dev(sess->dev_id)) { + CDEV_LOG_ERR("Invalid dev_id=%d", sess->dev_id); + return; + } + + dev = &rte_crypto_devices[sess->dev_id]; + + RTE_FUNC_PTR_OR_RET(*dev->dev_ops->qp_detach_session); + if (dev->dev_ops->qp_detach_session(dev, qp_id, sess->_private)) { + CDEV_LOG_ERR("dev_id %d failed to detach qp: %d from session", + sess->dev_id, qp_id); + return; + } +} struct rte_cryptodev_sym_session * rte_cryptodev_sym_session_free(uint8_t dev_id, struct rte_cryptodev_sym_session *sess) diff --git a/lib/librte_cryptodev/rte_cryptodev.h b/lib/librte_cryptodev/rte_cryptodev.h index d61a43e..b322bea 100644 --- a/lib/librte_cryptodev/rte_cryptodev.h +++ b/lib/librte_cryptodev/rte_cryptodev.h @@ -332,6 +332,9 @@ struct rte_cryptodev_info { struct { unsigned max_nb_sessions; /**< Maximum number of sessions supported by device. */ + unsigned max_nb_sessions_per_qp; + /**< Maximum number of sessions per queue pair. + * Default 0 for infinite sessions. */ } sym; }; @@ -915,6 +918,30 @@ extern struct rte_cryptodev_sym_session * rte_cryptodev_sym_session_free(uint8_t dev_id, struct rte_cryptodev_sym_session *session); +/** + * Attach queue pair with sym session. + * + * @param qp_id Queue pair to which session will be attached. + * @param session Session pointer previously allocated by + * *rte_cryptodev_sym_session_create*. + * + */ +extern void +rte_cryptodev_queue_pair_attach_sym_session(uint16_t qp_id, + struct rte_cryptodev_sym_session *session); + +/** + * Detach queue pair with sym session. + * + * @param qp_id Queue pair to which session is attached. + * @param session Session pointer previously allocated by + * *rte_cryptodev_sym_session_create*. + * + */ +extern void +rte_cryptodev_queue_pair_detach_sym_session(uint16_t qp_id, + struct rte_cryptodev_sym_session *session); + #ifdef __cplusplus } diff --git a/lib/librte_cryptodev/rte_cryptodev_pmd.h b/lib/librte_cryptodev/rte_cryptodev_pmd.h index 1a417e2..df92817 100644 --- a/lib/librte_cryptodev/rte_cryptodev_pmd.h +++ b/lib/librte_cryptodev/rte_cryptodev_pmd.h @@ -381,6 +381,31 @@ typedef void * (*cryptodev_sym_configure_session_t)(struct rte_cryptodev *dev, typedef void (*cryptodev_sym_free_session_t)(struct rte_cryptodev *dev, void *session_private); +/** + * Optional API for drivers to attach sessions with queue pair. + * @param dev Crypto device pointer + * @param qp_id queue pair id for attaching session + * @param priv_sess Pointer to cryptodev's private session structure + * @return + * - Return 0 on success + */ +typedef int (*cryptodev_sym_queue_pair_attach_session_t)( + struct rte_cryptodev *dev, + uint16_t qp_id, + void *session_private); + +/** + * Optional API for drivers to detach sessions from queue pair. + * @param dev Crypto device pointer + * @param qp_id queue pair id for detaching session + * @param priv_sess Pointer to cryptodev's private session structure + * @return + * - Return 0 on success + */ +typedef int (*cryptodev_sym_queue_pair_detach_session_t)( + struct rte_cryptodev *dev, + uint16_t qp_id, + void *session_private); /** Crypto device operations function pointer table */ struct rte_cryptodev_ops { @@ -415,6 +440,10 @@ struct rte_cryptodev_ops { /**< Configure a Crypto session. */ cryptodev_sym_free_session_t session_clear; /**< Clear a Crypto sessions private data. */ + cryptodev_sym_queue_pair_attach_session_t qp_attach_session; + /**< Attach queue pair with session. */ + cryptodev_sym_queue_pair_attach_session_t qp_detach_session; + /**< Detach queue pair from session. */ }; diff --git a/lib/librte_cryptodev/rte_cryptodev_version.map b/lib/librte_cryptodev/rte_cryptodev_version.map index 831a15c..9ac510e 100644 --- a/lib/librte_cryptodev/rte_cryptodev_version.map +++ b/lib/librte_cryptodev/rte_cryptodev_version.map @@ -70,5 +70,7 @@ DPDK_17.05 { rte_cryptodev_get_auth_algo_enum; rte_cryptodev_get_cipher_algo_enum; + rte_cryptodev_queue_pair_attach_sym_session; + rte_cryptodev_queue_pair_detach_sym_session; } DPDK_17.02;