From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by dpdk.org (Postfix) with ESMTP id 2D9DB101B for ; 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" To: Anoob Joseph , Akhil Goyal , "Doherty, Declan" CC: Jerin Jacob , Narayana Prasad , Nelio Laranjeiro , "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 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-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 ; Doherty, Declan > ; Nicolau, Radu > Cc: Anoob Joseph ; Jerin Jacob > ; Narayana Prasad > ; Nelio Laranjeiro > ; 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 > --- > 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