From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <radu.nicolau@intel.com>
Received: from mga12.intel.com (mga12.intel.com [192.55.52.136])
 by dpdk.org (Postfix) with ESMTP id 2D9DB101B
 for <dev@dpdk.org>; Mon, 26 Feb 2018 10:35:56 +0100 (CET)
X-Amp-Result: SKIPPED(no attachment in message)
X-Amp-File-Uploaded: False
Received: from fmsmga002.fm.intel.com ([10.253.24.26])
 by fmsmga106.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;
 26 Feb 2018 01:35:54 -0800
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.47,396,1515484800"; d="scan'208";a="23168473"
Received: from irsmsx110.ger.corp.intel.com ([163.33.3.25])
 by fmsmga002.fm.intel.com with ESMTP; 26 Feb 2018 01:35:53 -0800
Received: from irsmsx104.ger.corp.intel.com ([169.254.5.101]) by
 irsmsx110.ger.corp.intel.com ([169.254.15.15]) with mapi id 14.03.0319.002;
 Mon, 26 Feb 2018 09:35:52 +0000
From: "Nicolau, Radu" <radu.nicolau@intel.com>
To: Anoob Joseph <anoob.joseph@caviumnetworks.com>, Akhil Goyal
 <akhil.goyal@nxp.com>, "Doherty, Declan" <declan.doherty@intel.com>
CC: Jerin Jacob <jerin.jacob@caviumnetworks.com>, Narayana Prasad
 <narayanaprasad.athreya@caviumnetworks.com>, Nelio Laranjeiro
 <nelio.laranjeiro@6wind.com>, "dev@dpdk.org" <dev@dpdk.org>
Thread-Topic: [PATCH 1/5] lib/ethdev: support for inline IPsec events
Thread-Index: AQHTqtZB827uKyDmP0i8zP9UcUfWVKO2c/hA
Date: Mon, 26 Feb 2018 09:35:51 +0000
Message-ID: <763A2F19A5EFF34F8B7F1657C992EE297B32AFD8@IRSMSX104.ger.corp.intel.com>
References: <1516626668-9031-0-git-send-email-anoob.joseph@caviumnetworks.com>
 <1519191430-19201-1-git-send-email-anoob.joseph@caviumnetworks.com>
 <1519191430-19201-2-git-send-email-anoob.joseph@caviumnetworks.com>
In-Reply-To: <1519191430-19201-2-git-send-email-anoob.joseph@caviumnetworks.com>
Accept-Language: en-IE, en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-ctpclassification: CTP_NT
x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiMjhlZDJiY2UtZGFlOS00ZDIzLTkxZWUtMzc3YzM2ODgwODEyIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE2LjUuOS4zIiwiVHJ1c3RlZExhYmVsSGFzaCI6IjVjelpHRSs0U3NEOUtJSmhXR3JhY3U2NmJKUE03REdTdHJpQSt0b3Y3Q3M9In0=
dlp-product: dlpe-windows
dlp-version: 11.0.0.116
dlp-reaction: no-action
x-originating-ip: [163.33.239.182]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Subject: Re: [dpdk-dev] [PATCH 1/5] lib/ethdev: support for inline IPsec
	events
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://dpdk.org/ml/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://dpdk.org/ml/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://dpdk.org/ml/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
X-List-Received-Date: Mon, 26 Feb 2018 09:35:56 -0000



> -----Original Message-----
> From: Anoob Joseph [mailto:anoob.joseph@caviumnetworks.com]
> Sent: Wednesday, February 21, 2018 5:37 AM
> To: Akhil Goyal <akhil.goyal@nxp.com>; Doherty, Declan
> <declan.doherty@intel.com>; Nicolau, Radu <radu.nicolau@intel.com>
> Cc: Anoob Joseph <anoob.joseph@caviumnetworks.com>; Jerin Jacob
> <jerin.jacob@caviumnetworks.com>; Narayana Prasad
> <narayanaprasad.athreya@caviumnetworks.com>; Nelio Laranjeiro
> <nelio.laranjeiro@6wind.com>; dev@dpdk.org
> Subject: [PATCH 1/5] lib/ethdev: support for inline IPsec events
>=20
> Adding support for IPsec events in rte_eth_event framework. In inline IPs=
ec
> offload, the per packet protocol defined variables, like ESN, would be
> managed by PMD. In such cases, PMD would need IPsec events to notify
> application about various conditions like, ESN overflow.
>=20
> Signed-off-by: Anoob Joseph <anoob.joseph@caviumnetworks.com>
> ---
>  lib/librte_ether/rte_ethdev.h | 22 ++++++++++++++++++++++
>  1 file changed, 22 insertions(+)
>=20
> diff --git a/lib/librte_ether/rte_ethdev.h b/lib/librte_ether/rte_ethdev.=
h
> index 0361533..4e4e18d 100644
> --- a/lib/librte_ether/rte_ethdev.h
> +++ b/lib/librte_ether/rte_ethdev.h
> @@ -2438,6 +2438,27 @@ int
>  rte_eth_tx_done_cleanup(uint16_t port_id, uint16_t queue_id, uint32_t
> free_cnt);
>=20
>  /**
> + * Subtypes for IPsec offload events raised by eth device.
> + */
> +enum rte_eth_event_ipsec_subtype {
> +	RTE_ETH_EVENT_IPSEC_ESN_OVERFLOW,
> +			/** Sequence number overflow in security offload */
> +	RTE_ETH_EVENT_IPSEC_MAX
> +			/** Max value of this enum */
> +};
I would add some more events to the list (to make it look less like a very =
specific case implementation): crypto/auth failed and undefined/unspecified=
 being the most obvious.
Apart from this, the patchset looks fine.

> +
> +/**
> + * Descriptor for IPsec event. Used by eth dev to send extra
> +information of the
> + * event.
> + */
> +struct rte_eth_event_ipsec_desc {
> +	enum rte_eth_event_ipsec_subtype stype;
> +			/** Type of IPsec event */
> +	uint64_t md;
> +			/** Event specific metadata */
> +};
> +
> +/**
>   * The eth device event type for interrupt, and maybe others in the futu=
re.
>   */
>  enum rte_eth_event_type {
> @@ -2448,6 +2469,7 @@ enum rte_eth_event_type {
>  	RTE_ETH_EVENT_INTR_RESET,
>  			/**< reset interrupt event, sent to VF on PF reset */
>  	RTE_ETH_EVENT_VF_MBOX,  /**< message from the VF received by
> PF */
> +	RTE_ETH_EVENT_IPSEC,    /**< IPsec offload related event */
>  	RTE_ETH_EVENT_MACSEC,   /**< MACsec offload related event */
>  	RTE_ETH_EVENT_INTR_RMV, /**< device removal event */
>  	RTE_ETH_EVENT_NEW,      /**< port is probed */
> --
> 2.7.4