From: Jerin Jacob <jerin.jacob@caviumnetworks.com>
To: Abhinandan Gujjar <abhinandan.gujjar@intel.com>
Cc: hemant.agrawal@nxp.com, akhil.goyal@nxp.com, dev@dpdk.org,
narender.vangati@intel.com, nikhil.rao@intel.com,
gage.eads@intel.com
Subject: Re: [v3,1/5] eventdev: introduce event crypto adapter
Date: Mon, 7 May 2018 15:05:18 +0530 [thread overview]
Message-ID: <20180507093516.GA8052@jerin> (raw)
In-Reply-To: <1525546030-11204-2-git-send-email-abhinandan.gujjar@intel.com>
-----Original Message-----
> Date: Sun, 6 May 2018 00:17:06 +0530
> From: Abhinandan Gujjar <abhinandan.gujjar@intel.com>
> To: jerin.jacob@caviumnetworks.com, hemant.agrawal@nxp.com,
> akhil.goyal@nxp.com, dev@dpdk.org
> CC: narender.vangati@intel.com, abhinandan.gujjar@intel.com,
> nikhil.rao@intel.com, gage.eads@intel.com
> Subject: [v3,1/5] eventdev: introduce event crypto adapter
> X-Mailer: git-send-email 1.9.1
>
> Signed-off-by: Abhinandan Gujjar <abhinandan.gujjar@intel.com>
> Signed-off-by: Nikhil Rao <nikhil.rao@intel.com>
> Signed-off-by: Gage Eads <gage.eads@intel.com>
> ---
> MAINTAINERS | 5 +
> lib/librte_eventdev/rte_event_crypto_adapter.h | 554 +++++++++++++++++++++++++
> 2 files changed, 559 insertions(+)
> create mode 100644 lib/librte_eventdev/rte_event_crypto_adapter.h
>
Overall it looks good.
#1)
Please fix the following ./devtools/checkpatches.sh warning.
➜ [master]laptop [dpdk.org] $ ./devtools/checkpatches.sh
### eventdev: add crypto adapter implementation
WARNING:SPDX_LICENSE_TAG: Missing or malformed SPDX-License-Identifier
tag in line 1
#106: FILE: lib/librte_eventdev/rte_event_crypto_adapter.c:1:
+/* SPDX-License-Identifier: BSD-3-Clause
### test: add event crypto adapter auto-test
WARNING:SPDX_LICENSE_TAG: Missing or malformed SPDX-License-Identifier
tag in line 1
#38: FILE: test/test/test_event_crypto_adapter.c:1:
+/* SPDX-License-Identifier: BSD-3-Clause
total: 0 errors, 1 warnings, 927 lines checked
### doc: add event crypto adapter documentation
WARNING:SPDX_LICENSE_TAG: Missing or malformed SPDX-License-Identifier
tag in line 1
#41: FILE: doc/guides/prog_guide/event_crypto_adapter.rst:1:
+.. SPDX-License-Identifier: BSD-3-Clause
* In the RTE_EVENT_CRYPTO_ADAPTER_OP_FORWARD mode, if HW supports
* RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_FWD capability the
* application
* can directly submit the crypto operations to the cryptodev.
* If not,
#2) I have added minor changes in description, Wherever it makes sense
to you then please pull it for next revision. Else we can discuss more.
a) I have uploaded the diff at https://ufile.io/247t9 for
you convince.
b) Please update the similar change in programmers guide too.
diff --git a/lib/librte_eventdev/rte_event_crypto_adapter.h b/lib/librte_eventdev/rte_event_crypto_adapter.h
index 2c1f54f76..55fbdc55e 100644
--- a/lib/librte_eventdev/rte_event_crypto_adapter.h
+++ b/lib/librte_eventdev/rte_event_crypto_adapter.h
@@ -23,14 +23,17 @@
* between the crypto device and the event device.
*
* The application can choose to submit a crypto operation directly to
- * crypto device or send it to the crypto adapter via eventdev, the crypto
- * adapter then submits the crypto operation to the crypto device.
- * The first mode is known as the event new (OP_NEW) mode and the
- * second as the event forward (OP_FORWARD) mode. The choice of mode can
- * be specified while creating the adapter.
+ * crypto device or send it to the crypto adapter via eventdev based on
+ * RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_FWD capability.
+ * The first mode is known as the event new(RTE_EVENT_CRYPTO_ADAPTER_OP_NEW)
+ * mode and the second as the event forward(RTE_EVENT_CRYPTO_ADAPTER_OP_FORWARD)
+ * mode. The choice of mode can be specified while creating the adapter.
+ * In the former mode, it is an application responsibility to enable ingress packet
+ * ordering. In the latter mode, it is the adapter responsibility to enable
+ * the ingress packet ordering.
*
*
- * Working model of OP_NEW mode:
+ * Working model of RTE_EVENT_CRYPTO_ADAPTER_OP_NEW mode:
*
* +--------------+ +--------------+
* --[1]-->| | | Crypto stage |
@@ -47,25 +50,27 @@
* | | | |
* +--------------+ +--------------+
*
- * [1] Events from the previous stage.
+ * [1] Events from the previous stage and enqueue to crypto/atomic stage
* [2] Application in atomic stage dequeues events from eventdev.
- * [3] Crypto operations are submitted to cryptodev.
+ * [3] Crypto operations are submitted to cryptodev by application.
* [4] Crypto adapter dequeues crypto completions from cryptodev.
* [5] Crypto adapter enqueues events to the eventdev.
* [6] Events to the next stage.
*
- * In the OP_NEW mode, application submits crypto operations directly to
- * crypto device. The adapter then dequeues crypto completions from crypto
+ * In the RTE_EVENT_CRYPTO_ADAPTER_OP_NEW mode, application submits crypto
+ * operations directly to crypto device.
+ * The adapter then dequeues crypto completions from crypto
* device and enqueue events to the event device.
- * This mode does not ensure ingress ordering. The application is expected
- * to be in atomic stage. Events dequeued from the adapter will be treated
- * as new events.
+ * This mode does not ensure ingress ordering if the application directly
+ * enqueues to cryptodev without going through crypto/atomic stage. i.e removing
+ * item [1] and [2].
+ * Events dequeued from the adapter will be treated as new events.
* In this mode, application needs to specify event information (response
* information) which is needed to enqueue an event after the crypto operation
* is completed.
*
*
- * Working model of OP_FORWARD mode:
+ * Working model of RTE_EVENT_CRYPTO_ADAPTER_OP_FORWARD mode:
*
* +--------------+ +--------------+
* --[1]-->| |---[2]-->| |
@@ -93,8 +98,9 @@
* [7] Crypto adapter enqueues events to the eventdev
* [8] Events to the next stage
*
- * In the OP_FORWARD mode, if HW supports *_OP_FORWARD capability the
- * application can directly submit the crypto operations to the cryptodev.
+ * In the RTE_EVENT_CRYPTO_ADAPTER_OP_FORWARD mode, if HW supports
+ * RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_FWD capability the application
+ * can directly submit the crypto operations to the cryptodev.
* If not, application retrieves crypto adapter's event port using
* rte_event_crypto_adapter_event_port_get() API. Then, links its event
* queue to this port and starts enqueuing crypto operations as events
@@ -121,7 +127,7 @@
* - rte_event_crypto_adapter_stop()
* - rte_event_crypto_adapter_stats_get()
* - rte_event_crypto_adapter_stats_reset()
-
+ *
* The application creates an instance using rte_event_crypto_adapter_create()
* or rte_event_crypto_adapter_create_ext().
*
@@ -173,8 +179,10 @@ enum rte_event_crypto_adapter_mode {
/**< Start the crypto adapter in event forward mode.
* @see RTE_EVENT_OP_FORWARD.
* Application submits crypto requests as events to the crypto
- * adapter. Adapter submits crypto requests to the cryptodev
- * and crypto completions are enqueued back to the eventdev.
+ * adapter or crypto device based on
+ * RTE_EVENT_CRYPTO_ADAPTER_CAP_INTERNAL_PORT_OP_FWD capability.
+ * crypto completions are enqueued back to the eventdev by
+ * crypto adapter.
*/
};
@@ -215,11 +223,12 @@ struct rte_event_crypto_request {
union rte_event_crypto_metadata {
struct rte_event_crypto_request request_info;
/**< Request information to be filled in by application
- * for OP_FORWARD mode.
+ * for RTE_EVENT_CRYPTO_ADAPTER_OP_NEW mode.
*/
struct rte_event response_info;
/**< Response information to be filled in by application
- * for OP_NEW and OP_FORWARD mode.
+ * for RTE_EVENT_CRYPTO_ADAPTER_OP_NEW and
+ * RTE_EVENT_CRYPTO_ADAPTER_OP_FORWARD mode.
*/
};
@@ -234,7 +243,8 @@ union rte_event_crypto_metadata {
struct rte_event_crypto_adapter_conf {
uint8_t event_port_id;
/**< Event port identifier, the adapter enqueues events to this
- * port and dequeues crypto request events in OP_FORWARD mode.
+ * port and dequeues crypto request events in
+ * RTE_EVENT_CRYPTO_ADAPTER_OP_FORWARD mode.
*/
uint32_t max_nb;
/**< The adapter can return early if it has processed at least
next prev parent reply other threads:[~2018-05-07 9:35 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-05-05 18:47 [v3,0/5] eventdev: cover letter - crypto adapter Abhinandan Gujjar
2018-05-05 18:47 ` [v3,1/5] eventdev: introduce event " Abhinandan Gujjar
2018-05-07 9:35 ` Jerin Jacob [this message]
2018-05-07 12:32 ` Akhil Goyal
2018-05-07 13:07 ` Jerin Jacob
2018-05-08 7:34 ` Gujjar, Abhinandan S
2018-05-08 12:49 ` Jerin Jacob
2018-05-08 12:52 ` Gujjar, Abhinandan S
2018-05-05 18:47 ` [v3, 2/5] eventdev: add APIs and PMD callbacks for " Abhinandan Gujjar
2018-05-07 9:52 ` Jerin Jacob
2018-05-08 8:39 ` Gujjar, Abhinandan S
2018-05-07 15:28 ` Akhil Goyal
2018-05-08 8:46 ` Gujjar, Abhinandan S
2018-05-05 18:47 ` [v3,3/5] eventdev: add crypto adapter implementation Abhinandan Gujjar
2018-05-07 4:58 ` [v3, 3/5] " Jerin Jacob
2018-05-07 6:50 ` Jerin Jacob
2018-05-05 18:47 ` [v3,4/5] test: add event crypto adapter auto-test Abhinandan Gujjar
2018-05-07 5:20 ` Jerin Jacob
2018-05-07 5:58 ` Jerin Jacob
2018-05-07 10:08 ` Jerin Jacob
2018-05-08 8:27 ` Gujjar, Abhinandan S
2018-05-05 18:47 ` [v3,5/5] doc: add event crypto adapter documentation Abhinandan Gujjar
2018-05-07 12:27 ` [v3, 5/5] " Jerin Jacob
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180507093516.GA8052@jerin \
--to=jerin.jacob@caviumnetworks.com \
--cc=abhinandan.gujjar@intel.com \
--cc=akhil.goyal@nxp.com \
--cc=dev@dpdk.org \
--cc=gage.eads@intel.com \
--cc=hemant.agrawal@nxp.com \
--cc=narender.vangati@intel.com \
--cc=nikhil.rao@intel.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.