From mboxrd@z Thu Jan 1 00:00:00 1970 From: Hemant Agrawal Subject: Re: [PATCH v5 06/11] ethdev: support security APIs Date: Wed, 25 Oct 2017 10:35:31 +0530 Message-ID: <3ca0f460-2ff7-9c44-e4bd-69bc9edb8871@nxp.com> References: <20171014221734.15511-1-akhil.goyal@nxp.com> <20171024141545.30837-1-akhil.goyal@nxp.com> <20171024141545.30837-7-akhil.goyal@nxp.com> Mime-Version: 1.0 Content-Type: text/plain; charset="windows-1252"; format=flowed Content-Transfer-Encoding: 7bit Cc: , , , , , , , , , , , To: Akhil Goyal , Return-path: Received: from NAM02-BL2-obe.outbound.protection.outlook.com (mail-bl2nam02on0079.outbound.protection.outlook.com [104.47.38.79]) by dpdk.org (Postfix) with ESMTP id 33BE01B891 for ; Wed, 25 Oct 2017 07:05:38 +0200 (CEST) In-Reply-To: <20171024141545.30837-7-akhil.goyal@nxp.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On 10/24/2017 7:45 PM, Akhil Goyal wrote: > From: Declan Doherty > > rte_flow_action type and ethdev updated to support rte_security > sessions for crypto offload to ethernet device. > > Signed-off-by: Boris Pismenny > Signed-off-by: Aviad Yehezkel > Signed-off-by: Radu Nicolau > Signed-off-by: Declan Doherty > --- > lib/librte_ether/rte_ethdev.c | 7 +++++++ > lib/librte_ether/rte_ethdev.h | 8 ++++++++ > lib/librte_ether/rte_ethdev_version.map | 1 + > 3 files changed, 16 insertions(+) > > diff --git a/lib/librte_ether/rte_ethdev.c b/lib/librte_ether/rte_ethdev.c > index 0b1e928..a3b0e4e 100644 > --- a/lib/librte_ether/rte_ethdev.c > +++ b/lib/librte_ether/rte_ethdev.c > @@ -301,6 +301,13 @@ rte_eth_dev_socket_id(uint16_t port_id) > return rte_eth_devices[port_id].data->numa_node; > } > > +void * > +rte_eth_dev_get_sec_ctx(uint8_t port_id) > +{ > + RTE_ETH_VALID_PORTID_OR_ERR_RET(port_id, NULL); > + return rte_eth_devices[port_id].security_ctx; > +} > + > uint16_t > rte_eth_dev_count(void) > { > diff --git a/lib/librte_ether/rte_ethdev.h b/lib/librte_ether/rte_ethdev.h > index b773589..119f7fc 100644 > --- a/lib/librte_ether/rte_ethdev.h > +++ b/lib/librte_ether/rte_ethdev.h > @@ -180,6 +180,8 @@ extern "C" { > #include > #include > #include > +#include > + > #include "rte_ether.h" > #include "rte_eth_ctrl.h" > #include "rte_dev_info.h" > @@ -963,6 +965,7 @@ struct rte_eth_conf { > #define DEV_RX_OFFLOAD_CRC_STRIP 0x00001000 > #define DEV_RX_OFFLOAD_SCATTER 0x00002000 > #define DEV_RX_OFFLOAD_TIMESTAMP 0x00004000 > +#define DEV_RX_OFFLOAD_SECURITY 0x00008000 > #define DEV_RX_OFFLOAD_CHECKSUM (DEV_RX_OFFLOAD_IPV4_CKSUM | \ > DEV_RX_OFFLOAD_UDP_CKSUM | \ > DEV_RX_OFFLOAD_TCP_CKSUM) > @@ -998,6 +1001,7 @@ struct rte_eth_conf { > * When set application must guarantee that per-queue all mbufs comes from > * the same mempool and has refcnt = 1. > */ > +#define DEV_TX_OFFLOAD_SECURITY 0x00020000 > > struct rte_pci_device; > > @@ -1741,8 +1745,12 @@ struct rte_eth_dev { > */ > struct rte_eth_rxtx_callback *pre_tx_burst_cbs[RTE_MAX_QUEUES_PER_PORT]; > enum rte_eth_dev_state state; /**< Flag indicating the port state */ > + void *security_ctx; /**< Context for security ops */ > } __rte_cache_aligned; > > +void * > +rte_eth_dev_get_sec_ctx(uint8_t port_id); > + > struct rte_eth_dev_sriov { > uint8_t active; /**< SRIOV is active with 16, 32 or 64 pools */ > uint8_t nb_q_per_pool; /**< rx queue number per pool */ > diff --git a/lib/librte_ether/rte_ethdev_version.map b/lib/librte_ether/rte_ethdev_version.map > index 57d9b54..e9681ac 100644 > --- a/lib/librte_ether/rte_ethdev_version.map > +++ b/lib/librte_ether/rte_ethdev_version.map > @@ -191,6 +191,7 @@ DPDK_17.08 { > DPDK_17.11 { > global: > > + rte_eth_dev_get_sec_ctx; > rte_eth_dev_pool_ops_supported; > rte_eth_dev_reset; > rte_flow_error_set; > Acked-by: Hemant Agrawal