DPDK patches and discussions
 help / color / mirror / Atom feed
From: Honnappa Nagarahalli <Honnappa.Nagarahalli@arm.com>
To: Akhil Goyal <gakhil@marvell.com>
Cc: "Dooley, Brian" <brian.dooley@intel.com>,
	"Ji, Kai" <kai.ji@intel.com>,
	"De Lara Guarch, Pablo" <pablo.de.lara.guarch@intel.com>,
	"Power, Ciara" <ciara.power@intel.com>,
	"dev@dpdk.org" <dev@dpdk.org>,
	Wathsala Wathawana Vithanage <wathsala.vithanage@arm.com>,
	Ruifeng Wang <Ruifeng.Wang@arm.com>,
	Jack Bond-Preston <Jack.Bond-Preston@arm.com>, nd <nd@arm.com>
Subject: Re: [PATCH v4] crypto/ipsec_mb: unified IPsec MB interface
Date: Tue, 5 Mar 2024 05:39:55 +0000	[thread overview]
Message-ID: <3F7DF22C-75C6-4FBD-B38A-ADEE23FDAC87@arm.com> (raw)
In-Reply-To: <PH0PR18MB4491D8F1E1C4F346E90CF256D8232@PH0PR18MB4491.namprd18.prod.outlook.com>



> On Mar 4, 2024, at 1:33 AM, Akhil Goyal <gakhil@marvell.com> wrote:
> 
>>> Hi folks,
>>> 
>>> The introduction of a more unified IPsec MB library for DPDK is causing the
>>> snow3g tests to fail on ARM. Artifact here:
>>> https://lab.dpdk.org/results/dashboard/patchsets/29315/
>>> PMDs using the direct API (KASUMI, CHACHA, ZUC, SNOW3G) will use the job
>> API,
>>> from the AESNI MB PMD code.
>>> We have come across a similar issue in the past that related to an offset issue as
>>> SNOW3G uses bits instead of bytes.
>> 
>> The above link does not seem to be working.
>> I believe from now on, since we continue to maintain two separate repos,
>> it would be better to get ack from ARM folks as well
>> before merging anything onto crypto/ipsec_mb PMD.
>> 
>> Arm folks, Could you please get the below change tested/incorporated in the
>> repo.
> 
> Hi Arm folks,
> Any update on the below fix?
This is being worked on. We are in the process of creating a new tag. We will update soon.

> 
> 
>> 
>> 
>>> 
>>> commit a501609ea6466ed8526c0dfadedee332a4d4a451
>>> Author: Pablo de Lara pablo.de.lara.guarch@intel.com
>>> Date:   Wed Feb 23 16:01:16 2022 +0000
>>> 
>>>    crypto/ipsec_mb: fix length and offset settings
>>> 
>>>    KASUMI, SNOW3G and ZUC require lengths and offsets to
>>>    be set in bits or bytes depending on the algorithm.
>>>    There were some algorithms that were mixing these two,
>>>    so this commit is fixing this issue.
>>> 
>>> This bug only appeared recently when the ARM ipsec version was bumped to
>> 1.4.
>>> It appears there could be a similar scenario happening now and this is a
>> potential
>>> fix that needs to be made in the ARM IPsec-mb repo:
>>> 
>>> diff --git a/lib/aarch64/mb_mgr_snow3g_submit_flush_common_aarch64.h
>>> b/lib/aarch64/mb_mgr_snow3g_submit_flush_common_aarch64.h
>>> index 13bca11b..de284ade 100644
>>> --- a/lib/aarch64/mb_mgr_snow3g_submit_flush_common_aarch64.h
>>> +++ b/lib/aarch64/mb_mgr_snow3g_submit_flush_common_aarch64.h
>>> @@ -94,8 +94,8 @@ static void
>>> snow3g_mb_mgr_insert_uea2_job(MB_MGR_SNOW3G_OOO *state, IMB_JOB
>>> *job
>>>     state->num_lanes_inuse++;
>>>     state->args.iv[used_lane_idx] = job->iv;
>>>     state->args.keys[used_lane_idx] = job->enc_keys;
>>> -    state->args.in[used_lane_idx] = job->src + job-
>>>> cipher_start_src_offset_in_bytes;
>>> -    state->args.out[used_lane_idx] = job->dst;
>>> +    state->args.in[used_lane_idx] = job->src + (job-
>>>> cipher_start_src_offset_in_bits / 8);
>>> +    state->args.out[used_lane_idx] = job->dst + (job-
>>>> cipher_start_src_offset_in_bits / 8);
>>>     state->args.byte_length[used_lane_idx] = job->msg_len_to_cipher_in_bits /
>> 8;
>>>     state->args.INITIALIZED[used_lane_idx] = 0;
>>>     state->lens[used_lane_idx] = job->msg_len_to_cipher_in_bits / 8;
>>> 
>>> Thanks,
>>> Brian
>>> 
>>>> -----Original Message-----
>>>> From: Dooley, Brian <brian.dooley@intel.com>
>>>> Sent: Wednesday, February 28, 2024 11:33 AM
>>>> To: Ji, Kai <kai.ji@intel.com>; De Lara Guarch, Pablo
>>>> <pablo.de.lara.guarch@intel.com>
>>>> Cc: dev@dpdk.org; gakhil@marvell.com; Dooley, Brian
>>>> <brian.dooley@intel.com>
>>>> Subject: [PATCH v4] crypto/ipsec_mb: unified IPsec MB interface
>>>> 
>>>> Currently IPsec MB provides both the JOB API and direct API.
>>>> AESNI_MB PMD is using the JOB API codepath while ZUC, KASUMI, SNOW3G
>>>> and CHACHA20_POLY1305 are using the direct API.
>>>> Instead of using the direct API for these PMDs, they should now make
>>>> use of the JOB API codepath. This would remove all use of the IPsec MB
>>>> direct API for these PMDs.
>>>> 
>>>> Signed-off-by: Brian Dooley <brian.dooley@intel.com>
>>>> ---
>>>> v2:
>>>> - Fix compilation failure
>>>> v3:
>>>> - Remove session configure pointer for each PMD
>>>> v4:
>>>> - Keep AES GCM PMD and fix extern issue
>>>> ---
>>>> doc/guides/rel_notes/release_24_03.rst        |   6 +
>>>> drivers/crypto/ipsec_mb/pmd_aesni_mb.c        |  10 +-
>>>> drivers/crypto/ipsec_mb/pmd_aesni_mb_priv.h   |  15 +-
>>>> drivers/crypto/ipsec_mb/pmd_chacha_poly.c     | 338 +----------
>>>> .../crypto/ipsec_mb/pmd_chacha_poly_priv.h    |  28 -
>>>> drivers/crypto/ipsec_mb/pmd_kasumi.c          | 410 +------------
>>>> drivers/crypto/ipsec_mb/pmd_kasumi_priv.h     |  20 -
>>>> drivers/crypto/ipsec_mb/pmd_snow3g.c          | 543 +-----------------
>>>> drivers/crypto/ipsec_mb/pmd_snow3g_priv.h     |  21 -
>>>> drivers/crypto/ipsec_mb/pmd_zuc.c             | 347 +----------
>>>> drivers/crypto/ipsec_mb/pmd_zuc_priv.h        |  20 -
>>>> 11 files changed, 48 insertions(+), 1710 deletions(-)
>>>> 
>>> <snip>


  reply	other threads:[~2024-03-05  5:40 UTC|newest]

Thread overview: 45+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-12-12 15:36 [PATCH v1] " Brian Dooley
2023-12-14 15:15 ` [PATCH v2] " Brian Dooley
2024-01-18 12:00 ` [PATCH v3] " Brian Dooley
2024-02-28 11:33 ` [PATCH v4] " Brian Dooley
2024-02-28 11:50   ` Power, Ciara
2024-02-29 16:23   ` Dooley, Brian
2024-02-29 16:32     ` Akhil Goyal
2024-03-04  7:33       ` Akhil Goyal
2024-03-05  5:39         ` Honnappa Nagarahalli [this message]
2024-03-05 17:31           ` Wathsala Wathawana Vithanage
2024-03-05 15:21   ` Wathsala Wathawana Vithanage
2024-03-05 17:42 ` [PATCH v5 1/4] crypto/ipsec_mb: bump minimum IPsec Multi-buffer version Brian Dooley
2024-03-05 17:42   ` [PATCH v5 2/4] doc: remove outdated version details Brian Dooley
2024-03-05 17:42   ` [PATCH v5 3/4] crypto/ipsec_mb: use new ipad/opad calculation API Brian Dooley
2024-03-05 17:42   ` [PATCH v5 4/4] crypto/ipsec_mb: unified IPsec MB interface Brian Dooley
2024-03-15 18:25     ` Patrick Robb
2024-03-05 19:11   ` [EXTERNAL] [PATCH v5 1/4] crypto/ipsec_mb: bump minimum IPsec Multi-buffer version Akhil Goyal
2024-03-05 19:50     ` Patrick Robb
2024-03-05 23:30       ` Patrick Robb
2024-03-06  3:57         ` Patrick Robb
2024-03-06 11:12     ` Power, Ciara
2024-03-06 14:59       ` Patrick Robb
2024-03-06 15:29         ` Power, Ciara
2024-03-07 16:21           ` Wathsala Wathawana Vithanage
2024-03-08 16:05             ` Power, Ciara
2024-03-12 16:26             ` Wathsala Wathawana Vithanage
2024-03-15 18:24               ` Patrick Robb
2024-03-12 13:50 ` [PATCH v6 1/5] ci: replace IPsec-mb package install Brian Dooley
2024-03-12 13:50   ` [PATCH v6 2/5] crypto/ipsec_mb: bump minimum IPsec Multi-buffer version Brian Dooley
2024-03-12 13:50   ` [PATCH v6 3/5] doc: remove outdated version details Brian Dooley
2024-03-12 13:50   ` [PATCH v6 4/5] crypto/ipsec_mb: use new ipad/opad calculation API Brian Dooley
2024-03-12 13:50   ` [PATCH v6 5/5] crypto/ipsec_mb: unify some IPsec MB PMDs Brian Dooley
2024-03-12 13:54   ` [PATCH v6 1/5] ci: replace IPsec-mb package install David Marchand
2024-03-12 15:26     ` Power, Ciara
2024-03-12 16:13       ` David Marchand
2024-03-12 17:07         ` Power, Ciara
2024-03-12 16:05   ` David Marchand
2024-03-12 16:16     ` Jack Bond-Preston
2024-03-12 17:08     ` Power, Ciara
2024-03-12 18:04   ` Power, Ciara
2024-03-15 18:26     ` Patrick Robb
2024-03-14 10:37 ` [PATCH v7 1/2] doc: remove outdated version details Brian Dooley
2024-03-14 10:37   ` [PATCH v7 2/2] doc: announce Intel IPsec MB version bump Brian Dooley
2024-03-14 12:04     ` Power, Ciara
2024-03-22 19:33   ` [EXTERNAL] [PATCH v7 1/2] doc: remove outdated version details Akhil Goyal

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3F7DF22C-75C6-4FBD-B38A-ADEE23FDAC87@arm.com \
    --to=honnappa.nagarahalli@arm.com \
    --cc=Jack.Bond-Preston@arm.com \
    --cc=Ruifeng.Wang@arm.com \
    --cc=brian.dooley@intel.com \
    --cc=ciara.power@intel.com \
    --cc=dev@dpdk.org \
    --cc=gakhil@marvell.com \
    --cc=kai.ji@intel.com \
    --cc=nd@arm.com \
    --cc=pablo.de.lara.guarch@intel.com \
    --cc=wathsala.vithanage@arm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).