DPDK patches and discussions
 help / color / mirror / Atom feed
* [RFC 00/11] Fix dev_ops dereferences
@ 2025-02-17 18:53 Stephen Hemminger
  2025-02-17 18:54 ` [RFC 01/11] ethdev: remove unnecessary deref on function pointers Stephen Hemminger
                   ` (13 more replies)
  0 siblings, 14 replies; 52+ messages in thread
From: Stephen Hemminger @ 2025-02-17 18:53 UTC (permalink / raw)
  To: dev; +Cc: Stephen Hemminger

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.

The PVS Studio checker flags these as:
 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.

It should have no impact on the resulting binary.


Stephen Hemminger (11):
  ethdev: remove unnecessary deref on function pointers
  eventdev: remover unnecessary deref on function pointers
  net/ixgbe: 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

 drivers/crypto/scheduler/scheduler_pmd_ops.c |   5 +-
 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                      | 489 +++++++++----------
 lib/ethdev/rte_ethdev_cman.c                 |   8 +-
 lib/eventdev/rte_event_crypto_adapter.c      |  36 +-
 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 +--
 17 files changed, 575 insertions(+), 649 deletions(-)

-- 
2.47.2


^ permalink raw reply	[flat|nested] 52+ messages in thread

end of thread, other threads:[~2025-02-21  9:12 UTC | newest]

Thread overview: 52+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
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 ` [PATCH v2 00/14] Remove unnecessary function pointer deref Stephen Hemminger
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-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-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

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).