DPDK patches and discussions
 help / color / mirror / Atom feed
From: Stephen Hemminger <stephen@networkplumber.org>
To: dev@dpdk.org
Cc: Stephen Hemminger <stephen@networkplumber.org>
Subject: [PATCH v4 00/12] memset security fixes
Date: Thu, 14 Nov 2024 10:43:22 -0800	[thread overview]
Message-ID: <20241114184452.31854-1-stephen@networkplumber.org> (raw)
In-Reply-To: <20241114011129.451243-1-stephen@networkplumber.org>

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.

v4 - review feedback
   - remove more Napatech NIC unnecessary memset

Stephen Hemminger (12):
  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: remove unnecessary void cast
  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/nim/i2c_nim.c               |  2 +-
 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    |  7 ++---
 .../ntnic/nthw/flow_filter/flow_nthw_csu.c    |  7 ++---
 .../ntnic/nthw/flow_filter/flow_nthw_flm.c    |  7 ++---
 .../ntnic/nthw/flow_filter/flow_nthw_hfu.c    |  7 ++---
 .../ntnic/nthw/flow_filter/flow_nthw_hsh.c    |  7 ++---
 .../ntnic/nthw/flow_filter/flow_nthw_ifr.c    |  2 +-
 .../ntnic/nthw/flow_filter/flow_nthw_info.c   |  7 ++---
 .../net/ntnic/nthw/flow_filter/flow_nthw_km.c |  7 ++---
 .../ntnic/nthw/flow_filter/flow_nthw_pdb.c    |  7 ++---
 .../ntnic/nthw/flow_filter/flow_nthw_qsl.c    |  7 ++---
 .../ntnic/nthw/flow_filter/flow_nthw_rpp_lr.c |  7 ++---
 .../ntnic/nthw/flow_filter/flow_nthw_slc_lr.c |  7 ++---
 .../ntnic/nthw/flow_filter/flow_nthw_tx_cpy.c |  3 +-
 .../ntnic/nthw/flow_filter/flow_nthw_tx_ins.c |  7 ++---
 .../ntnic/nthw/flow_filter/flow_nthw_tx_rpl.c |  7 ++---
 .../net/ntnic/nthw/model/nthw_fpga_model.c    |  1 -
 drivers/net/ntnic/nthw/nthw_rac.c             |  4 ++-
 drivers/net/ntnic/ntnic_ethdev.c              |  2 +-
 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 ++
 36 files changed, 146 insertions(+), 125 deletions(-)
 create mode 100644 devtools/cocci/memset_free.cocci

-- 
2.45.2


  parent reply	other threads:[~2024-11-14 18:45 UTC|newest]

Thread overview: 38+ 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-14  2:35   ` [PATCH v3 10/11] net/ntnic: check result of malloc Stephen Hemminger
2024-11-14  2:36   ` [PATCH v3 11/11] net/ntnic: remove unnecessary memset Stephen Hemminger
2024-11-14 18:43 ` Stephen Hemminger [this message]
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-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

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=20241114184452.31854-1-stephen@networkplumber.org \
    --to=stephen@networkplumber.org \
    --cc=dev@dpdk.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).