From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from dpdk.org (dpdk.org [92.243.14.124])
	by inbox.dpdk.org (Postfix) with ESMTP id 141EAA04DC;
	Tue, 20 Oct 2020 14:05:11 +0200 (CEST)
Received: from [92.243.14.124] (localhost [127.0.0.1])
	by dpdk.org (Postfix) with ESMTP id E77CDBAD4;
	Tue, 20 Oct 2020 14:05:09 +0200 (CEST)
Received: from mga07.intel.com (mga07.intel.com [134.134.136.100])
 by dpdk.org (Postfix) with ESMTP id E9AF272EC
 for <dev@dpdk.org>; Tue, 20 Oct 2020 14:05:07 +0200 (CEST)
IronPort-SDR: LPvmJNioVleIFl4caHIReeU5QSFnXZwCFVE+7l6Cscp8L0bpt3HaxZYKCGXTGYOcEtIBmvWbQF
 ILjmygpA3Lsg==
X-IronPort-AV: E=McAfee;i="6000,8403,9779"; a="231389540"
X-IronPort-AV: E=Sophos;i="5.77,396,1596524400"; d="scan'208";a="231389540"
X-Amp-Result: SKIPPED(no attachment in message)
X-Amp-File-Uploaded: False
Received: from orsmga005.jf.intel.com ([10.7.209.41])
 by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;
 20 Oct 2020 05:04:42 -0700
IronPort-SDR: p2dEEB9vCw78Zxt/P38ddxn43KeeakFYtQZsbz89dh/yYCDef4OLSK1QVL14MpNGCQP3rn1bGe
 sFktsr2ITOKg==
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.77,396,1596524400"; d="scan'208";a="533033903"
Received: from unknown (HELO localhost.localdomain) ([10.190.210.98])
 by orsmga005.jf.intel.com with ESMTP; 20 Oct 2020 05:04:39 -0700
From: Abhinandan Gujjar <abhinandan.gujjar@intel.com>
To: dev@dpdk.org, declan.doherty@intel.com, akhil.goyal@nxp.com,
 Honnappa.Nagarahalli@arm.com, konstantin.ananyev@intel.com
Cc: narender.vangati@intel.com, jerinj@marvell.com, abhinandan.gujjar@intel.com
Date: Mon, 19 Oct 2020 08:27:20 +0530
Message-Id: <1603076242-41883-1-git-send-email-abhinandan.gujjar@intel.com>
X-Mailer: git-send-email 1.9.1
Subject: [dpdk-dev] [v3 0/2] support enqueue callbacks on cryptodev
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org
Sender: "dev" <dev-bounces@dpdk.org>

In an eventdev world, multiple workers (with ordered queue) will be
working on IPsec ESP processing. The ESP header's sequence number is
unique and has to be sequentially incremented in an orderly manner.
This rises a need for incrementing sequence number in crypto stage
especially in event crypto adapter. By adding a user callback to
cryptodev at enqueue burst, the user callback will get executed
in the context of event crypto adapter. This helps the application
to increment the ESP sequence number atomically and orderly manner.

v2->v3:
    -Moved RCU under the cryptodev APIs
    -RCU is maintained per queue-pair
    -Changed name of few variables
    -Updated callback test with negative cases
    -Updated with required changes for meson

v1->v2:
    -Moved callback related members to the end of cryptodev struct
    -Added support for RCU


Abhinandan Gujjar (2):
  cryptodev: support enqueue callback functions with RCU
  test: add testcase for crypto enqueue callback

 app/test/test_cryptodev.c                      | 133 +++++++++++++++-
 config/rte_config.h                            |   1 +
 lib/librte_cryptodev/meson.build               |   2 +-
 lib/librte_cryptodev/rte_cryptodev.c           | 201 +++++++++++++++++++++++++
 lib/librte_cryptodev/rte_cryptodev.h           | 153 ++++++++++++++++++-
 lib/librte_cryptodev/rte_cryptodev_version.map |   2 +
 6 files changed, 488 insertions(+), 4 deletions(-)

-- 
1.9.1