This patch series builds on the allocation function attributes
added in 24.11 release. These annotations will allow for compiler
to flag cases where a pointer is allocated with one function
but incorrectly passed to a different free function.

The current code base does this correctly now, but adding
attributes will catch future bugs, or errors in user programs.

For each of these patches, the free function prototype
needs to be reordered to be before the function attribute
of the allocator.

Checkpatch perl script falsely complains in a couple patches
because it doesn't really understand C syntax for attributes.

v2 - fix issue with bitratestats prototypes

Stephen Hemminger (15):
  fib: add allocation function attributes
  rib: annotate rib allocation functions
  hash: add allocation function attributes
  lpm: add allocation function attributes
  pipeline: add allocation function attributes
  acl: add allocation function attributes
  bitratestats: add allocation function attributes
  member: add allocation function attributes
  mempool: add allocation function attributes
  eventdev: add allocation function attributes
  ring: add allocation function attributes
  reorder: add allocation function attributes
  compressdev: add allocation function attributes
  telemetry: add allocation function attributes
  sched: add allocation function attributes

 lib/acl/rte_acl.h                 | 26 ++++++++-------
 lib/bitratestats/rte_bitrate.h    |  4 +--
 lib/compressdev/rte_comp.h        | 28 ++++++++--------
 lib/eventdev/rte_event_ring.h     | 27 +++++++--------
 lib/fib/rte_fib.h                 | 26 ++++++++-------
 lib/fib/rte_fib6.h                | 24 +++++++-------
 lib/fib/trie.h                    |  7 ++--
 lib/hash/rte_fbk_hash.h           | 24 +++++++-------
 lib/hash/rte_hash.h               | 21 ++++++------
 lib/lpm/rte_lpm.h                 | 23 ++++++-------
 lib/lpm/rte_lpm6.h                | 23 ++++++-------
 lib/member/rte_member.h           | 24 +++++++-------
 lib/mempool/rte_mempool.h         | 37 +++++++++++----------
 lib/pipeline/rte_port_in_action.h | 55 ++++++++++++++++---------------
 lib/pipeline/rte_table_action.h   | 53 +++++++++++++++--------------
 lib/reorder/rte_reorder.h         | 23 ++++++-------
 lib/rib/rte_rib.h                 | 24 +++++++-------
 lib/rib/rte_rib6.h                | 24 +++++++-------
 lib/ring/rte_ring.h               | 22 +++++++------
 lib/sched/rte_sched.h             | 23 +++++++------
 lib/telemetry/rte_telemetry.h     | 21 ++++++------
 21 files changed, 288 insertions(+), 251 deletions(-)

-- 
2.45.2

Reply via email to