From: Stephen Hemminger <stephen@networkplumber.org>
To: dev@dpdk.org
Cc: Stephen Hemminger <stephen@networkplumber.org>
Subject: [PATCH v2 00/14] Remove unnecessary function pointer deref
Date: Wed, 19 Feb 2025 18:32:04 -0800 [thread overview]
Message-ID: <20250220023509.630569-1-stephen@networkplumber.org> (raw)
In-Reply-To: <20250217185743.169778-1-stephen@networkplumber.org>
A common pattern in DPDK internals is to have an array of function
pointers. When using these pointers an unnecessary derefence is done;
this is allowed in C because of a historical quirk but unnecessary.
This fixes all instances of PVS Studio checker warning:
https://pvs-studio.com/en/docs/warnings/v516/
This leads to a large number of warnings marked as High severity.
This patchset simplifies the source and gets rid of these warnings.
Stephen Hemminger (14):
ethdev: remove unnecessary deref on function pointers
eventdev: remover unnecessary deref on function pointers
net/bonding: remove unnecessary deref of function pointers
net/ixgbe: remove unnecessary dereference
net/ipn3ke: remove unnecessary dereference
net/memif: remove unnecessary deref of function pointers
cryptodev: remove unnecessary deref of function pointers
crypto/scheduler: remove unnecessary dereference
compressdev: remove unnecessary deref of function pointers
dmadev: remove unnecessary deref of function pointers
rawdev: remove unnecessary deref of function pointers
mldev: remove unnecessary deref of function pointers
regexdev: remove unnecessary deref of function pointers
security: remove unnecessary dereference
.../scheduler/rte_cryptodev_scheduler.c | 8 +-
drivers/crypto/scheduler/scheduler_pmd_ops.c | 25 +-
drivers/net/bonding/rte_eth_bond_pmd.c | 12 +-
drivers/net/intel/ipn3ke/ipn3ke_ethdev.c | 27 +-
drivers/net/intel/ixgbe/rte_pmd_ixgbe.c | 5 +-
drivers/net/memif/rte_eth_memif.c | 6 +-
lib/compressdev/rte_compressdev.c | 56 +-
lib/cryptodev/rte_cryptodev.c | 72 ++-
lib/dmadev/rte_dmadev.c | 38 +-
lib/ethdev/ethdev_driver.c | 16 +-
lib/ethdev/ethdev_private.c | 4 +-
lib/ethdev/rte_ethdev.c | 492 ++++++++----------
lib/ethdev/rte_ethdev.h | 12 +-
lib/ethdev/rte_ethdev_cman.c | 8 +-
lib/eventdev/rte_event_crypto_adapter.c | 37 +-
lib/eventdev/rte_event_dma_adapter.c | 16 +-
lib/eventdev/rte_event_eth_rx_adapter.c | 50 +-
lib/eventdev/rte_eventdev.c | 164 +++---
lib/mldev/rte_mldev.c | 88 ++--
lib/rawdev/rte_rawdev.c | 99 ++--
lib/regexdev/rte_regexdev.c | 72 +--
lib/security/rte_security.c | 5 +-
22 files changed, 612 insertions(+), 700 deletions(-)
--
2.47.2
next prev parent reply other threads:[~2025-02-20 2:35 UTC|newest]
Thread overview: 58+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-17 18:53 [RFC 00/11] Fix dev_ops dereferences Stephen Hemminger
2025-02-17 18:54 ` [RFC 01/11] ethdev: remove unnecessary deref on function pointers Stephen Hemminger
2025-02-17 18:54 ` [RFC 02/11] eventdev: remover " Stephen Hemminger
2025-02-17 18:54 ` [RFC 03/11] net/ixgbe: remove unnecessary dereference Stephen Hemminger
2025-02-17 18:54 ` [RFC 04/11] net/memif: remove unnecessary deref of function pointers Stephen Hemminger
2025-02-17 18:54 ` [RFC 05/11] cryptodev: " Stephen Hemminger
2025-02-17 18:54 ` [RFC 06/11] crypto/scheduler: remove unnecessary dereference Stephen Hemminger
2025-02-17 18:54 ` [RFC 07/11] compressdev: remove unnecessary deref of function pointers Stephen Hemminger
2025-02-17 18:54 ` [RFC 08/11] dmadev: " Stephen Hemminger
2025-02-17 18:54 ` [RFC 09/11] rawdev: " Stephen Hemminger
2025-02-17 18:54 ` [RFC 10/11] mldev: " Stephen Hemminger
2025-02-17 18:54 ` [RFC 11/11] regexdev: " Stephen Hemminger
2025-02-17 20:24 ` [RFC 00/11] Fix dev_ops dereferences Morten Brørup
2025-02-18 3:01 ` Stephen Hemminger
2025-02-18 8:47 ` Bruce Richardson
2025-02-20 2:32 ` Stephen Hemminger [this message]
2025-02-20 2:32 ` [PATCH v2 01/14] ethdev: remove unnecessary deref on function pointers Stephen Hemminger
2025-02-20 7:09 ` Andrew Rybchenko
2025-02-20 16:09 ` Stephen Hemminger
2025-02-20 2:32 ` [PATCH v2 02/14] eventdev: remover " Stephen Hemminger
2025-02-20 2:32 ` [PATCH v2 03/14] net/bonding: remove unnecessary deref of " Stephen Hemminger
2025-02-20 2:32 ` [PATCH v2 04/14] net/ixgbe: remove unnecessary dereference Stephen Hemminger
2025-02-20 9:17 ` Bruce Richardson
2025-02-20 2:32 ` [PATCH v2 05/14] net/ipn3ke: " Stephen Hemminger
2025-02-26 8:52 ` Xu, Rosen
2025-02-20 2:32 ` [PATCH v2 06/14] net/memif: remove unnecessary deref of function pointers Stephen Hemminger
2025-02-20 2:32 ` [PATCH v2 07/14] cryptodev: " Stephen Hemminger
2025-02-20 2:32 ` [PATCH v2 08/14] crypto/scheduler: remove unnecessary dereference Stephen Hemminger
2025-02-20 2:32 ` [PATCH v2 09/14] compressdev: remove unnecessary deref of function pointers Stephen Hemminger
2025-02-20 2:32 ` [PATCH v2 10/14] dmadev: " Stephen Hemminger
2025-02-20 3:00 ` fengchengwen
2025-02-20 2:32 ` [PATCH v2 11/14] rawdev: " Stephen Hemminger
2025-02-20 2:32 ` [PATCH v2 12/14] mldev: " Stephen Hemminger
2025-02-20 2:32 ` [PATCH v2 13/14] regexdev: " Stephen Hemminger
2025-02-20 2:32 ` [PATCH v2 14/14] security: remove unnecessary dereference Stephen Hemminger
2025-02-20 8:05 ` [PATCH v2 00/14] Remove unnecessary function pointer deref Morten Brørup
2025-02-20 9:17 ` Bruce Richardson
2025-02-20 16:55 ` [PATCH v3 " Stephen Hemminger
2025-02-20 16:55 ` [PATCH v3 01/14] ethdev: remove unnecessary deref on function pointers Stephen Hemminger
2025-02-20 16:55 ` [PATCH v3 02/14] eventdev: remover " Stephen Hemminger
2025-02-25 13:02 ` Gujjar, Abhinandan S
2025-02-25 13:18 ` Pavan Nikhilesh Bhagavatula
2025-02-25 13:27 ` Amit Prakash Shukla
2025-02-20 16:55 ` [PATCH v3 03/14] net/bonding: remove unnecessary deref of " Stephen Hemminger
2025-02-20 16:55 ` [PATCH v3 04/14] net/ixgbe: remove unnecessary dereference Stephen Hemminger
2025-02-20 16:55 ` [PATCH v3 05/14] net/ipn3ke: " Stephen Hemminger
2025-02-20 16:55 ` [PATCH v3 06/14] net/memif: remove unnecessary deref of function pointers Stephen Hemminger
2025-02-20 16:55 ` [PATCH v3 07/14] cryptodev: " Stephen Hemminger
2025-02-20 16:55 ` [PATCH v3 08/14] crypto/scheduler: remove unnecessary dereference Stephen Hemminger
2025-02-20 16:55 ` [PATCH v3 09/14] compressdev: remove unnecessary deref of function pointers Stephen Hemminger
2025-02-20 16:55 ` [PATCH v3 10/14] dmadev: " Stephen Hemminger
2025-02-20 16:55 ` [PATCH v3 11/14] rawdev: " Stephen Hemminger
2025-02-21 9:12 ` Hemant Agrawal
2025-02-20 16:55 ` [PATCH v3 12/14] mldev: " Stephen Hemminger
2025-02-20 16:55 ` [PATCH v3 13/14] regexdev: " Stephen Hemminger
2025-02-20 16:55 ` [PATCH v3 14/14] security: remove unnecessary dereference Stephen Hemminger
2025-03-05 16:52 ` [PATCH v3 00/14] Remove unnecessary function pointer deref David Marchand
2025-03-10 22:26 ` 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=20250220023509.630569-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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.