mbox series

[RFC,0/7] crypto/ipsec_mb: introduce ipsec_mb framework

Message ID 20210618121803.1189857-1-piotrx.bronowski@intel.com (mailing list archive)
Headers show
Series crypto/ipsec_mb: introduce ipsec_mb framework | expand

Message

pbronowx June 18, 2021, 12:17 p.m. UTC
This set of patches introduces the new framework making all common code of
SW crypto PMDs implementations build on top of intel-ipsec-mb library
sharable, also helps to reduce future effort on the code maintenance and
future updates. It also moves all SW PMD implementations specific details
into single file located in crypto/ipsec_mb folder.

pbronowx (6):
  crypto/ipsec_mb: move aesni-mb PMD to ipsec_mb framework
  crypto/ipsec_mb: move aesni-gcm PMD to ipsec_mb framework
  crypto/ipsec_mb: move kasumi PMD to ipsec_mb framework
  crypto/ipsec_mb: move snow3g PMD to ipsec_mb framework
  crypto/snow3g: add support for digest appended ops
  crypto/ipsec_mb: move zuc PMD to ipsec_mb framework

pibr (1):
  crypto/ipsec_mb: introduce ipsec_mb framework

 doc/guides/cryptodevs/features/snow3g.ini     |    1 +
 drivers/crypto/aesni_gcm/aesni_gcm_ops.h      |  104 -
 drivers/crypto/aesni_gcm/aesni_gcm_pmd.c      |  978 ---------
 drivers/crypto/aesni_gcm/aesni_gcm_pmd_ops.c  |  333 ----
 .../crypto/aesni_gcm/aesni_gcm_pmd_private.h  |  123 --
 drivers/crypto/aesni_gcm/meson.build          |   24 -
 .../crypto/aesni_mb/aesni_mb_pmd_private.h    |  337 ----
 drivers/crypto/aesni_mb/meson.build           |   25 -
 .../crypto/aesni_mb/rte_aesni_mb_pmd_ops.c    | 1126 -----------
 drivers/crypto/aesni_mb/version.map           |    3 -
 drivers/crypto/ipsec_mb/meson.build           |   32 +
 drivers/crypto/ipsec_mb/pmd_aesni_gcm.c       | 1015 ++++++++++
 .../pmd_aesni_mb.c}                           | 1762 ++++++++++++-----
 drivers/crypto/ipsec_mb/pmd_kasumi.c          |  557 ++++++
 drivers/crypto/ipsec_mb/pmd_snow3g.c          |  705 +++++++
 .../{zuc/rte_zuc_pmd.c => ipsec_mb/pmd_zuc.c} |  456 ++---
 drivers/crypto/ipsec_mb/rte_ipsec_mb_pmd.c    |  178 ++
 .../crypto/ipsec_mb/rte_ipsec_mb_pmd_ops.c    |  289 +++
 .../ipsec_mb/rte_ipsec_mb_pmd_private.h       |  463 +++++
 .../{aesni_gcm => ipsec_mb}/version.map       |    0
 drivers/crypto/kasumi/kasumi_pmd_private.h    |   81 -
 drivers/crypto/kasumi/meson.build             |   24 -
 drivers/crypto/kasumi/rte_kasumi_pmd.c        |  642 ------
 drivers/crypto/kasumi/rte_kasumi_pmd_ops.c    |  316 ---
 drivers/crypto/kasumi/version.map             |    3 -
 drivers/crypto/meson.build                    |    6 +-
 drivers/crypto/snow3g/meson.build             |   24 -
 drivers/crypto/snow3g/rte_snow3g_pmd.c        |  656 ------
 drivers/crypto/snow3g/rte_snow3g_pmd_ops.c    |  323 ---
 drivers/crypto/snow3g/snow3g_pmd_private.h    |   84 -
 drivers/crypto/snow3g/version.map             |    3 -
 drivers/crypto/zuc/meson.build                |   24 -
 drivers/crypto/zuc/rte_zuc_pmd_ops.c          |  322 ---
 drivers/crypto/zuc/version.map                |    3 -
 drivers/crypto/zuc/zuc_pmd_private.h          |   83 -
 35 files changed, 4722 insertions(+), 6383 deletions(-)
 delete mode 100644 drivers/crypto/aesni_gcm/aesni_gcm_ops.h
 delete mode 100644 drivers/crypto/aesni_gcm/aesni_gcm_pmd.c
 delete mode 100644 drivers/crypto/aesni_gcm/aesni_gcm_pmd_ops.c
 delete mode 100644 drivers/crypto/aesni_gcm/aesni_gcm_pmd_private.h
 delete mode 100644 drivers/crypto/aesni_gcm/meson.build
 delete mode 100644 drivers/crypto/aesni_mb/aesni_mb_pmd_private.h
 delete mode 100644 drivers/crypto/aesni_mb/meson.build
 delete mode 100644 drivers/crypto/aesni_mb/rte_aesni_mb_pmd_ops.c
 delete mode 100644 drivers/crypto/aesni_mb/version.map
 create mode 100644 drivers/crypto/ipsec_mb/meson.build
 create mode 100644 drivers/crypto/ipsec_mb/pmd_aesni_gcm.c
 rename drivers/crypto/{aesni_mb/rte_aesni_mb_pmd.c => ipsec_mb/pmd_aesni_mb.c} (60%)
 create mode 100644 drivers/crypto/ipsec_mb/pmd_kasumi.c
 create mode 100644 drivers/crypto/ipsec_mb/pmd_snow3g.c
 rename drivers/crypto/{zuc/rte_zuc_pmd.c => ipsec_mb/pmd_zuc.c} (52%)
 create mode 100644 drivers/crypto/ipsec_mb/rte_ipsec_mb_pmd.c
 create mode 100644 drivers/crypto/ipsec_mb/rte_ipsec_mb_pmd_ops.c
 create mode 100644 drivers/crypto/ipsec_mb/rte_ipsec_mb_pmd_private.h
 rename drivers/crypto/{aesni_gcm => ipsec_mb}/version.map (100%)
 delete mode 100644 drivers/crypto/kasumi/kasumi_pmd_private.h
 delete mode 100644 drivers/crypto/kasumi/meson.build
 delete mode 100644 drivers/crypto/kasumi/rte_kasumi_pmd.c
 delete mode 100644 drivers/crypto/kasumi/rte_kasumi_pmd_ops.c
 delete mode 100644 drivers/crypto/kasumi/version.map
 delete mode 100644 drivers/crypto/snow3g/meson.build
 delete mode 100644 drivers/crypto/snow3g/rte_snow3g_pmd.c
 delete mode 100644 drivers/crypto/snow3g/rte_snow3g_pmd_ops.c
 delete mode 100644 drivers/crypto/snow3g/snow3g_pmd_private.h
 delete mode 100644 drivers/crypto/snow3g/version.map
 delete mode 100644 drivers/crypto/zuc/meson.build
 delete mode 100644 drivers/crypto/zuc/rte_zuc_pmd_ops.c
 delete mode 100644 drivers/crypto/zuc/version.map
 delete mode 100644 drivers/crypto/zuc/zuc_pmd_private.h

Comments

David Marchand June 18, 2021, 1:11 p.m. UTC | #1
Hello,

On Fri, Jun 18, 2021 at 2:18 PM pbronowx <piotrx.bronowski@intel.com> wrote:
>
> This set of patches introduces the new framework making all common code of
> SW crypto PMDs implementations build on top of intel-ipsec-mb library
> sharable, also helps to reduce future effort on the code maintenance and
> future updates. It also moves all SW PMD implementations specific details
> into single file located in crypto/ipsec_mb folder.

As you described it, this framework should go to drivers/common/.


>
> pbronowx (6):
>   crypto/ipsec_mb: move aesni-mb PMD to ipsec_mb framework
>   crypto/ipsec_mb: move aesni-gcm PMD to ipsec_mb framework
>   crypto/ipsec_mb: move kasumi PMD to ipsec_mb framework
>   crypto/ipsec_mb: move snow3g PMD to ipsec_mb framework
>   crypto/snow3g: add support for digest appended ops
>   crypto/ipsec_mb: move zuc PMD to ipsec_mb framework
>
> pibr (1):
>   crypto/ipsec_mb: introduce ipsec_mb framework

Please use full names.


>
>  doc/guides/cryptodevs/features/snow3g.ini     |    1 +
>  drivers/crypto/aesni_gcm/aesni_gcm_ops.h      |  104 -
>  drivers/crypto/aesni_gcm/aesni_gcm_pmd.c      |  978 ---------
>  drivers/crypto/aesni_gcm/aesni_gcm_pmd_ops.c  |  333 ----
>  .../crypto/aesni_gcm/aesni_gcm_pmd_private.h  |  123 --
>  drivers/crypto/aesni_gcm/meson.build          |   24 -
>  .../crypto/aesni_mb/aesni_mb_pmd_private.h    |  337 ----
>  drivers/crypto/aesni_mb/meson.build           |   25 -
>  .../crypto/aesni_mb/rte_aesni_mb_pmd_ops.c    | 1126 -----------
>  drivers/crypto/aesni_mb/version.map           |    3 -
>  drivers/crypto/ipsec_mb/meson.build           |   32 +
>  drivers/crypto/ipsec_mb/pmd_aesni_gcm.c       | 1015 ++++++++++
>  .../pmd_aesni_mb.c}                           | 1762 ++++++++++++-----
>  drivers/crypto/ipsec_mb/pmd_kasumi.c          |  557 ++++++
>  drivers/crypto/ipsec_mb/pmd_snow3g.c          |  705 +++++++
>  .../{zuc/rte_zuc_pmd.c => ipsec_mb/pmd_zuc.c} |  456 ++---
>  drivers/crypto/ipsec_mb/rte_ipsec_mb_pmd.c    |  178 ++
>  .../crypto/ipsec_mb/rte_ipsec_mb_pmd_ops.c    |  289 +++
>  .../ipsec_mb/rte_ipsec_mb_pmd_private.h       |  463 +++++
>  .../{aesni_gcm => ipsec_mb}/version.map       |    0
>  drivers/crypto/kasumi/kasumi_pmd_private.h    |   81 -
>  drivers/crypto/kasumi/meson.build             |   24 -
>  drivers/crypto/kasumi/rte_kasumi_pmd.c        |  642 ------
>  drivers/crypto/kasumi/rte_kasumi_pmd_ops.c    |  316 ---
>  drivers/crypto/kasumi/version.map             |    3 -
>  drivers/crypto/meson.build                    |    6 +-
>  drivers/crypto/snow3g/meson.build             |   24 -
>  drivers/crypto/snow3g/rte_snow3g_pmd.c        |  656 ------
>  drivers/crypto/snow3g/rte_snow3g_pmd_ops.c    |  323 ---
>  drivers/crypto/snow3g/snow3g_pmd_private.h    |   84 -
>  drivers/crypto/snow3g/version.map             |    3 -
>  drivers/crypto/zuc/meson.build                |   24 -
>  drivers/crypto/zuc/rte_zuc_pmd_ops.c          |  322 ---
>  drivers/crypto/zuc/version.map                |    3 -
>  drivers/crypto/zuc/zuc_pmd_private.h          |   83 -
>  35 files changed, 4722 insertions(+), 6383 deletions(-)
>  delete mode 100644 drivers/crypto/aesni_gcm/aesni_gcm_ops.h
>  delete mode 100644 drivers/crypto/aesni_gcm/aesni_gcm_pmd.c
>  delete mode 100644 drivers/crypto/aesni_gcm/aesni_gcm_pmd_ops.c
>  delete mode 100644 drivers/crypto/aesni_gcm/aesni_gcm_pmd_private.h
>  delete mode 100644 drivers/crypto/aesni_gcm/meson.build
>  delete mode 100644 drivers/crypto/aesni_mb/aesni_mb_pmd_private.h
>  delete mode 100644 drivers/crypto/aesni_mb/meson.build
>  delete mode 100644 drivers/crypto/aesni_mb/rte_aesni_mb_pmd_ops.c
>  delete mode 100644 drivers/crypto/aesni_mb/version.map
>  create mode 100644 drivers/crypto/ipsec_mb/meson.build
>  create mode 100644 drivers/crypto/ipsec_mb/pmd_aesni_gcm.c
>  rename drivers/crypto/{aesni_mb/rte_aesni_mb_pmd.c => ipsec_mb/pmd_aesni_mb.c} (60%)
>  create mode 100644 drivers/crypto/ipsec_mb/pmd_kasumi.c
>  create mode 100644 drivers/crypto/ipsec_mb/pmd_snow3g.c
>  rename drivers/crypto/{zuc/rte_zuc_pmd.c => ipsec_mb/pmd_zuc.c} (52%)
>  create mode 100644 drivers/crypto/ipsec_mb/rte_ipsec_mb_pmd.c
>  create mode 100644 drivers/crypto/ipsec_mb/rte_ipsec_mb_pmd_ops.c
>  create mode 100644 drivers/crypto/ipsec_mb/rte_ipsec_mb_pmd_private.h
>  rename drivers/crypto/{aesni_gcm => ipsec_mb}/version.map (100%)
>  delete mode 100644 drivers/crypto/kasumi/kasumi_pmd_private.h
>  delete mode 100644 drivers/crypto/kasumi/meson.build
>  delete mode 100644 drivers/crypto/kasumi/rte_kasumi_pmd.c
>  delete mode 100644 drivers/crypto/kasumi/rte_kasumi_pmd_ops.c
>  delete mode 100644 drivers/crypto/kasumi/version.map
>  delete mode 100644 drivers/crypto/snow3g/meson.build
>  delete mode 100644 drivers/crypto/snow3g/rte_snow3g_pmd.c
>  delete mode 100644 drivers/crypto/snow3g/rte_snow3g_pmd_ops.c
>  delete mode 100644 drivers/crypto/snow3g/snow3g_pmd_private.h
>  delete mode 100644 drivers/crypto/snow3g/version.map
>  delete mode 100644 drivers/crypto/zuc/meson.build
>  delete mode 100644 drivers/crypto/zuc/rte_zuc_pmd_ops.c
>  delete mode 100644 drivers/crypto/zuc/version.map
>  delete mode 100644 drivers/crypto/zuc/zuc_pmd_private.h
>
> --
> 2.25.1
>
> --------------------------------------------------------------
> Intel Research and Development Ireland Limited
> Registered in Ireland
> Registered Office: Collinstown Industrial Park, Leixlip, County Kildare
> Registered Number: 308263
>
>
> This e-mail and any attachments may contain confidential material for the sole
> use of the intended recipient(s). Any review or distribution by others is
> strictly prohibited. If you are not the intended recipient, please contact the
> sender and delete all copies.


Please ask your IT to get this trailer removed.
Akhil Goyal June 18, 2021, 4:05 p.m. UTC | #2
Hi David,
> Hello,
> 
> On Fri, Jun 18, 2021 at 2:18 PM pbronowx <piotrx.bronowski@intel.com>
> wrote:
> >
> > This set of patches introduces the new framework making all common code
> of
> > SW crypto PMDs implementations build on top of intel-ipsec-mb library
> > sharable, also helps to reduce future effort on the code maintenance and
> > future updates. It also moves all SW PMD implementations specific details
> > into single file located in crypto/ipsec_mb folder.
> 
> As you described it, this framework should go to drivers/common/.

This patch set is moving a lot of SW crypto drivers into a single driver
In drivers/crypto/ipsec_mb.
This should be part of drivers/crypto only. 
But this patchset is a bit late as V1 deadline is already crossed for 21.08.

Regards,
Akhil
Zhang, Roy Fan June 21, 2021, 8:52 a.m. UTC | #3
Hi Akhil,

We targeted this patchset for 21.11. Just want to know everybody's thoughts before submitting V1.

Regards,
Fan

> -----Original Message-----
> From: Akhil Goyal <gakhil@marvell.com>
> Sent: Friday, June 18, 2021 5:05 PM
> To: David Marchand <david.marchand@redhat.com>; Bronowski, PiotrX
> <piotrx.bronowski@intel.com>
> Cc: dev <dev@dpdk.org>; Zhang, Roy Fan <roy.fan.zhang@intel.com>;
> Thomas Monjalon <thomas@monjalon.net>; Yigit, Ferruh
> <ferruh.yigit@intel.com>; Doherty, Declan <declan.doherty@intel.com>
> Subject: RE: [EXT] Re: [dpdk-dev] [RFC 0/7] crypto/ipsec_mb: introduce
> ipsec_mb framework
> 
> Hi David,
> > Hello,
> >
> > On Fri, Jun 18, 2021 at 2:18 PM pbronowx <piotrx.bronowski@intel.com>
> > wrote:
> > >
> > > This set of patches introduces the new framework making all common
> code
> > of
> > > SW crypto PMDs implementations build on top of intel-ipsec-mb library
> > > sharable, also helps to reduce future effort on the code maintenance and
> > > future updates. It also moves all SW PMD implementations specific
> details
> > > into single file located in crypto/ipsec_mb folder.
> >
> > As you described it, this framework should go to drivers/common/.
> 
> This patch set is moving a lot of SW crypto drivers into a single driver
> In drivers/crypto/ipsec_mb.
> This should be part of drivers/crypto only.
> But this patchset is a bit late as V1 deadline is already crossed for 21.08.
> 
> Regards,
> Akhil