DPDK patches and discussions
 help / color / mirror / Atom feed
From: Patrick Robb <probb@iol.unh.edu>
To: Stephen Hemminger <stephen@networkplumber.org>
Cc: dev@dpdk.org, Aaron Conole <aconole@redhat.com>
Subject: Re: [PATCH v5 00/11] memset security fixes
Date: Tue, 11 Feb 2025 15:59:34 -0500	[thread overview]
Message-ID: <CAJvnSUCdb0iZFWRZcRpVkhiE+j5HXeWX02Msh-erNHMv_T8u0A@mail.gmail.com> (raw)
In-Reply-To: <20250211173720.1188517-1-stephen@networkplumber.org>

[-- Attachment #1: Type: text/plain, Size: 3869 bytes --]

There is a performance failure for Intel E810 for this patch, but it is
coming from dpdk mainline, not this patchseries. I think something was
merged recently which bumped up the variance on forwarding because the
periodic runs on the E810 for DPDK 24.11 are stable, but all the current
runs on new patches which are applied on mainline have a significantly
higher variance. I am about to look into this - once we have it sorted and
stable I will request a retest on this patchseries, which will remove the
fail on Patchwork. I will pick up any ensuing conversation on the CI
mailing list as I don't want to flood your cover letter with discussion
about another patch.

On Tue, Feb 11, 2025 at 12:37 PM Stephen Hemminger <
stephen@networkplumber.org> wrote:

> This series handles memset related bugs indentified by PVS Studio.
> The root cause is that Gcc and other compilers are free to
> optimize away memset called before free.
>
> Most of the places memset was being used like this were bogus;
> probably some developer debug habit, and can be safely removed.
>
> v6 - add stable to the ntnic bug fix
>    - drop elimination of void cast in ntnic - unrelated change
>    - rebase
>
> Stephen Hemminger (11):
>   eal: introduce new secure memory fill
>   eal: add new secure free function
>   crypto/qat: force zero of keys
>   crypto/qat: fix size calculation for memset
>   crypto/qat: use secure memset
>   bus/uacce: remove memset before free
>   compress/octeontx: remove unnecessary memset
>   test: remove unneeded memset
>   net/ntnic: check result of malloc
>   net/ntnic: remove unnecessary memset
>   devtools/cocci: add script to find problematic memset
>
>  app/test/test_cmdline_cirbuf.c                |  2 --
>  devtools/cocci/memset_free.cocci              | 20 +++++++++++++
>  drivers/bus/uacce/uacce.c                     |  1 -
>  drivers/compress/octeontx/otx_zip.c           |  1 -
>  drivers/compress/octeontx/otx_zip_pmd.c       |  2 --
>  drivers/crypto/qat/qat_asym.c                 |  5 +---
>  drivers/crypto/qat/qat_sym_session.c          | 27 +++++++++--------
>  drivers/net/ntnic/nthw/core/nthw_hif.c        |  5 +---
>  drivers/net/ntnic/nthw/core/nthw_iic.c        |  5 +---
>  drivers/net/ntnic/nthw/core/nthw_pcie3.c      |  5 +---
>  drivers/net/ntnic/nthw/core/nthw_rpf.c        |  5 +---
>  drivers/net/ntnic/nthw/core/nthw_sdc.c        |  5 +---
>  drivers/net/ntnic/nthw/core/nthw_si5340.c     |  5 +---
>  .../ntnic/nthw/flow_filter/flow_nthw_cat.c    |  5 +---
>  .../ntnic/nthw/flow_filter/flow_nthw_csu.c    |  5 +---
>  .../ntnic/nthw/flow_filter/flow_nthw_flm.c    |  5 +---
>  .../ntnic/nthw/flow_filter/flow_nthw_hfu.c    |  5 +---
>  .../ntnic/nthw/flow_filter/flow_nthw_hsh.c    |  5 +---
>  .../ntnic/nthw/flow_filter/flow_nthw_info.c   |  5 +---
>  .../net/ntnic/nthw/flow_filter/flow_nthw_km.c |  5 +---
>  .../ntnic/nthw/flow_filter/flow_nthw_pdb.c    |  5 +---
>  .../ntnic/nthw/flow_filter/flow_nthw_qsl.c    |  5 +---
>  .../ntnic/nthw/flow_filter/flow_nthw_rpp_lr.c |  5 +---
>  .../ntnic/nthw/flow_filter/flow_nthw_slc_lr.c |  5 +---
>  .../ntnic/nthw/flow_filter/flow_nthw_tx_cpy.c |  1 -
>  .../ntnic/nthw/flow_filter/flow_nthw_tx_ins.c |  5 +---
>  .../ntnic/nthw/flow_filter/flow_nthw_tx_rpl.c |  5 +---
>  .../net/ntnic/nthw/model/nthw_fpga_model.c    |  1 -
>  drivers/net/ntnic/nthw/nthw_rac.c             |  4 ++-
>  lib/eal/common/rte_malloc.c                   | 30 +++++++++++++++----
>  lib/eal/include/rte_malloc.h                  | 18 +++++++++++
>  lib/eal/include/rte_string_fns.h              | 27 +++++++++++++++++
>  lib/eal/version.map                           |  3 ++
>  33 files changed, 129 insertions(+), 108 deletions(-)
>  create mode 100644 devtools/cocci/memset_free.cocci
>
> --
> 2.47.2
>
>

[-- Attachment #2: Type: text/html, Size: 4512 bytes --]

      parent reply	other threads:[~2025-02-11 21:02 UTC|newest]

Thread overview: 58+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-11-14  1:10 [PATCH 0/3] introduce rte_memset_sensative Stephen Hemminger
2024-11-14  1:10 ` [PATCH 1/3] eal: " Stephen Hemminger
2024-11-14  1:10 ` [PATCH 2/3] crypto/qat: use rte_memset_sensative Stephen Hemminger
2024-11-14  1:10 ` [PATCH 3/3] eal: add rte_free_sensative Stephen Hemminger
2024-11-14  1:52 ` [PATCH v2 0/8] memset security handling Stephen Hemminger
2024-11-14  1:52   ` [PATCH v2 1/8] eal: introduce new secure memory fill Stephen Hemminger
2024-11-14  1:52   ` [PATCH v2 2/8] eal: add new secure free function Stephen Hemminger
2024-11-14  1:52   ` [PATCH v2 3/8] crypto/qat: force zero of keys Stephen Hemminger
2024-11-14  1:52   ` [PATCH v2 4/8] crypto/qat: fix size calculation for memset Stephen Hemminger
2024-11-14  1:52   ` [PATCH v2 5/8] crypto/qat: use secure memset Stephen Hemminger
2024-11-14  1:52   ` [PATCH v2 6/8] bus/uacce: remove memset before free Stephen Hemminger
2024-11-14  1:52   ` [PATCH v2 7/8] compress/octeontx: remove unnecessary memset Stephen Hemminger
2024-11-14  1:52   ` [PATCH v2 8/8] test: remove unneeded memset Stephen Hemminger
2024-11-14  2:35 ` [PATCH v3 00/11] memset security handling Stephen Hemminger
2024-11-14  2:35   ` [PATCH v3 01/11] eal: introduce new secure memory fill Stephen Hemminger
2024-11-14  2:35   ` [PATCH v3 02/11] eal: add new secure free function Stephen Hemminger
2024-11-14  2:35   ` [PATCH v3 03/11] crypto/qat: force zero of keys Stephen Hemminger
2024-11-14  2:35   ` [PATCH v3 04/11] crypto/qat: fix size calculation for memset Stephen Hemminger
2024-11-14  2:35   ` [PATCH v3 05/11] crypto/qat: use secure memset Stephen Hemminger
2024-11-14  2:35   ` [PATCH v3 06/11] bus/uacce: remove memset before free Stephen Hemminger
2024-11-14  2:35   ` [PATCH v3 07/11] compress/octeontx: remove unnecessary memset Stephen Hemminger
2024-11-14  2:35   ` [PATCH v3 08/11] test: remove unneeded memset Stephen Hemminger
2024-11-14  2:35   ` [PATCH v3 09/11] net/ntnic: remove unnecessary void cast Stephen Hemminger
2024-11-17 18:16     ` Serhii Iliushyk
2024-11-14  2:35   ` [PATCH v3 10/11] net/ntnic: check result of malloc Stephen Hemminger
2024-11-17 18:24     ` Serhii Iliushyk
2024-11-14  2:36   ` [PATCH v3 11/11] net/ntnic: remove unnecessary memset Stephen Hemminger
2024-11-17 18:26     ` Serhii Iliushyk
2024-11-14 18:43 ` [PATCH v4 00/12] memset security fixes Stephen Hemminger
2024-11-14 18:43   ` [PATCH v4 01/12] eal: introduce new secure memory fill Stephen Hemminger
2024-11-14 18:43   ` [PATCH v4 02/12] eal: add new secure free function Stephen Hemminger
2024-11-14 18:43   ` [PATCH v4 03/12] crypto/qat: force zero of keys Stephen Hemminger
2024-11-14 18:43   ` [PATCH v4 04/12] crypto/qat: fix size calculation for memset Stephen Hemminger
2024-11-14 18:43   ` [PATCH v4 05/12] crypto/qat: use secure memset Stephen Hemminger
2024-11-14 18:43   ` [PATCH v4 06/12] bus/uacce: remove memset before free Stephen Hemminger
2024-11-15  6:04     ` fengchengwen
2024-11-14 18:43   ` [PATCH v4 07/12] compress/octeontx: remove unnecessary memset Stephen Hemminger
2024-11-14 18:43   ` [PATCH v4 08/12] test: remove unneeded memset Stephen Hemminger
2024-11-14 18:43   ` [PATCH v4 09/12] net/ntnic: remove unnecessary void cast Stephen Hemminger
2024-11-14 18:43   ` [PATCH v4 10/12] net/ntnic: check result of malloc Stephen Hemminger
2024-11-14 18:43   ` [PATCH v4 11/12] net/ntnic: remove unnecessary memset Stephen Hemminger
2024-11-14 18:43   ` [PATCH v4 12/12] devtools/cocci: add script to find problematic memset Stephen Hemminger
2025-02-11 17:35 ` [PATCH v5 00/11] memset security fixes Stephen Hemminger
2025-02-11 17:35   ` [PATCH v5 01/11] eal: introduce new secure memory fill Stephen Hemminger
2025-02-12  1:37     ` fengchengwen
2025-02-11 17:35   ` [PATCH v5 02/11] eal: add new secure free function Stephen Hemminger
2025-02-12  2:01     ` fengchengwen
2025-02-11 17:35   ` [PATCH v5 03/11] crypto/qat: force zero of keys Stephen Hemminger
2025-02-11 17:35   ` [PATCH v5 04/11] crypto/qat: fix size calculation for memset Stephen Hemminger
2025-02-11 17:35   ` [PATCH v5 05/11] crypto/qat: use secure memset Stephen Hemminger
2025-02-11 17:35   ` [PATCH v5 06/11] bus/uacce: remove memset before free Stephen Hemminger
2025-02-11 17:35   ` [PATCH v5 07/11] compress/octeontx: remove unnecessary memset Stephen Hemminger
2025-02-11 17:35   ` [PATCH v5 08/11] test: remove unneeded memset Stephen Hemminger
2025-02-12  1:40     ` fengchengwen
2025-02-11 17:35   ` [PATCH v5 09/11] net/ntnic: check result of malloc Stephen Hemminger
2025-02-11 17:35   ` [PATCH v5 10/11] net/ntnic: remove unnecessary memset Stephen Hemminger
2025-02-11 17:35   ` [PATCH v5 11/11] devtools/cocci: add script to find problematic memset Stephen Hemminger
2025-02-11 20:59   ` Patrick Robb [this message]

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=CAJvnSUCdb0iZFWRZcRpVkhiE+j5HXeWX02Msh-erNHMv_T8u0A@mail.gmail.com \
    --to=probb@iol.unh.edu \
    --cc=aconole@redhat.com \
    --cc=dev@dpdk.org \
    --cc=stephen@networkplumber.org \
    /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).