[PATCH v4 00/16] Add allocation function attributes
Stephen Hemminger
stephen at networkplumber.org
Fri Jan 24 19:14:51 CET 2025
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.
v4 - add release note
- add rte_common.h to bitrate.h to fix build
Stephen Hemminger (16):
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
doc: add release note about allocation attributes
doc/guides/rel_notes/release_25_03.rst | 30 ++++++++++++++
lib/acl/rte_acl.h | 26 ++++++------
lib/bitratestats/rte_bitrate.h | 22 ++++++-----
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 +++++-----
22 files changed, 328 insertions(+), 259 deletions(-)
--
2.45.2
More information about the dev
mailing list