[dpdk-dev] doc: added inline crypto feature

Message ID 1510147619-8701-1-git-send-email-radu.nicolau@intel.com (mailing list archive)
State Superseded, archived
Headers

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/Intel-compilation success Compilation OK

Commit Message

Radu Nicolau Nov. 8, 2017, 1:26 p.m. UTC
  Signed-off-by: Radu Nicolau <radu.nicolau@intel.com>
---
 doc/guides/nics/features.rst              | 17 +++++++++++++++++
 doc/guides/nics/features/default.ini      |  1 +
 doc/guides/nics/features/ixgbe.ini        |  2 ++
 doc/guides/nics/features/ixgbe_vec.ini    |  2 ++
 doc/guides/nics/features/ixgbe_vf.ini     |  2 ++
 doc/guides/nics/features/ixgbe_vf_vec.ini |  2 ++
 6 files changed, 26 insertions(+)
  

Comments

Thomas Monjalon Nov. 8, 2017, 2:22 p.m. UTC | #1
Hi,

08/11/2017 14:26, Radu Nicolau:
> --- a/doc/guides/nics/features.rst
> +++ b/doc/guides/nics/features.rst
> @@ -900,6 +900,23 @@ Documentation describes performance values.
>  See ``dpdk.org/doc/perf/*``.
>  
>  
> +.. _nic_features_inline_crypto_doc:

This anchor seems useless.

> +
> +Inline crypto
> +-------------
> +
> +Supports inline crypto processing (eg. inline IPsec). See Security library for more details.

As there are several types of inline crypto, don't you think it deserves
several separate features?
  
Radu Nicolau Nov. 8, 2017, 2:31 p.m. UTC | #2
On 11/8/2017 2:22 PM, Thomas Monjalon wrote:
> Hi,
>
> 08/11/2017 14:26, Radu Nicolau:
>> --- a/doc/guides/nics/features.rst
>> +++ b/doc/guides/nics/features.rst
>> @@ -900,6 +900,23 @@ Documentation describes performance values.
>>   See ``dpdk.org/doc/perf/*``.
>>   
>>   
>> +.. _nic_features_inline_crypto_doc:
> This anchor seems useless.
It is, I will remove it.
>
>> +
>> +Inline crypto
>> +-------------
>> +
>> +Supports inline crypto processing (eg. inline IPsec). See Security library for more details.
> As there are several types of inline crypto, don't you think it deserves
> several separate features?
We don't differentiate in the offload, net, mbuf APIs; it's all 
"security offload".
rte_security is the one that deals with different kinds of inline 
crypto, but in the NIC section it's all the same.
  
Thomas Monjalon Nov. 8, 2017, 3:13 p.m. UTC | #3
08/11/2017 15:31, Radu Nicolau:
> On 11/8/2017 2:22 PM, Thomas Monjalon wrote:
> > 08/11/2017 14:26, Radu Nicolau:
> >> +
> >> +Inline crypto
> >> +-------------
> >> +
> >> +Supports inline crypto processing (eg. inline IPsec). See Security library for more details.
> > 
> > As there are several types of inline crypto, don't you think it deserves
> > several separate features?
> 
> We don't differentiate in the offload, net, mbuf APIs; it's all 
> "security offload".
> rte_security is the one that deals with different kinds of inline 
> crypto, but in the NIC section it's all the same.

OK
How can we document which kind of inline crypto is supported with which device?
  
Radu Nicolau Nov. 8, 2017, 3:40 p.m. UTC | #4
On 11/8/2017 3:13 PM, Thomas Monjalon wrote:
> 08/11/2017 15:31, Radu Nicolau:
>> On 11/8/2017 2:22 PM, Thomas Monjalon wrote:
>>> 08/11/2017 14:26, Radu Nicolau:
>>>> +
>>>> +Inline crypto
>>>> +-------------
>>>> +
>>>> +Supports inline crypto processing (eg. inline IPsec). See Security library for more details.
>>> As there are several types of inline crypto, don't you think it deserves
>>> several separate features?
>> We don't differentiate in the offload, net, mbuf APIs; it's all
>> "security offload".
>> rte_security is the one that deals with different kinds of inline
>> crypto, but in the NIC section it's all the same.
> OK
> How can we document which kind of inline crypto is supported with which device?
I propose to change "See Security library for more details" to "See 
Security library and PMD documentation for more details" and update 
ixgbe.rst with an "inline crypto" section.
  

Patch

diff --git a/doc/guides/nics/features.rst b/doc/guides/nics/features.rst
index bfeae80..1170da8 100644
--- a/doc/guides/nics/features.rst
+++ b/doc/guides/nics/features.rst
@@ -900,6 +900,23 @@  Documentation describes performance values.
 See ``dpdk.org/doc/perf/*``.
 
 
+.. _nic_features_inline_crypto_doc:
+
+Inline crypto
+-------------
+
+Supports inline crypto processing (eg. inline IPsec). See Security library for more details.
+
+* **[uses]       rte_eth_rxconf,rte_eth_rxmode**: ``offloads:DEV_RX_OFFLOAD_SECURITY``,
+* **[uses]       rte_eth_txconf,rte_eth_txmode**: ``offloads:DEV_TX_OFFLOAD_SECURITY``.
+* **[implements] rte_security_ops**: ``session_create``, ``session_update``,
+  ``session_stats_get``, ``session_destroy``, ``set_pkt_metadata``, ``capabilities_get``.
+* **[provides] rte_eth_dev_info**: ``rx_offload_capa,rx_queue_offload_capa:DEV_RX_OFFLOAD_SECURITY``,
+  ``tx_offload_capa,tx_queue_offload_capa:DEV_TX_OFFLOAD_SECURITY``.
+* **[provides]   mbuf**: ``mbuf.ol_flags:PKT_RX_SEC_OFFLOAD``,
+  ``mbuf.ol_flags:PKT_TX_SEC_OFFLOAD``, ``mbuf.ol_flags:PKT_RX_SEC_OFFLOAD_FAILED``.
+
+
 
 .. _nic_features_other:
 
diff --git a/doc/guides/nics/features/default.ini b/doc/guides/nics/features/default.ini
index dc527dd..9ef6a2a 100644
--- a/doc/guides/nics/features/default.ini
+++ b/doc/guides/nics/features/default.ini
@@ -77,3 +77,4 @@  Usage doc            =
 Design doc           =
 Perf doc             =
 Mbuf fast free       =
+Inline crypto        =
diff --git a/doc/guides/nics/features/ixgbe.ini b/doc/guides/nics/features/ixgbe.ini
index 9ff5d8f..900840f 100644
--- a/doc/guides/nics/features/ixgbe.ini
+++ b/doc/guides/nics/features/ixgbe.ini
@@ -58,3 +58,5 @@  Linux VFIO           = Y
 ARMv8                = Y
 x86-32               = Y
 x86-64               = Y
+Inline crypto        = Y
+
diff --git a/doc/guides/nics/features/ixgbe_vec.ini b/doc/guides/nics/features/ixgbe_vec.ini
index 4d56df4..5e32c08 100644
--- a/doc/guides/nics/features/ixgbe_vec.ini
+++ b/doc/guides/nics/features/ixgbe_vec.ini
@@ -47,3 +47,5 @@  Linux VFIO           = Y
 ARMv8                = Y
 x86-32               = Y
 x86-64               = Y
+Inline crypto        = Y
+
diff --git a/doc/guides/nics/features/ixgbe_vf.ini b/doc/guides/nics/features/ixgbe_vf.ini
index b63e32c..f217b09 100644
--- a/doc/guides/nics/features/ixgbe_vf.ini
+++ b/doc/guides/nics/features/ixgbe_vf.ini
@@ -37,3 +37,5 @@  Linux VFIO           = Y
 ARMv8                = Y
 x86-32               = Y
 x86-64               = Y
+Inline crypto        = Y
+
diff --git a/doc/guides/nics/features/ixgbe_vf_vec.ini b/doc/guides/nics/features/ixgbe_vf_vec.ini
index c994857..9549aab 100644
--- a/doc/guides/nics/features/ixgbe_vf_vec.ini
+++ b/doc/guides/nics/features/ixgbe_vf_vec.ini
@@ -29,3 +29,5 @@  Linux VFIO           = Y
 ARMv8                = Y
 x86-32               = Y
 x86-64               = Y
+Inline crypto        = Y
+