+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+; Core suppression rules: DO NOT TOUCH ;
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
[suppress_function]
symbol_version = EXPERIMENTAL
[suppress_variable]
[suppress_variable]
symbol_version = INTERNAL
-; Ignore ABI 20.0.1 replaced with ABI 21
-[suppress_function]
- symbol_version = DPDK_20.0.1
+; Ignore generated PMD information strings
[suppress_variable]
- symbol_version = DPDK_20.0.1
+ name_regexp = _pmd_info$
+
+; Ignore changes on soname for mlx glue internal drivers
+[suppress_file]
+ soname_regexp = ^librte_.*mlx.*glue\.
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+; Experimental APIs exceptions ;
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
-; Explicit ignore for driver-only ABI
+; Ignore changes to asymmetric crypto API which is experimental
[suppress_type]
- name = rte_cryptodev_ops
-; Ignore this enum update as it is part of an experimental API
+ name = rte_crypto_asym_op
[suppress_type]
type_kind = enum
- name = rte_crypto_asym_xform_type
- changed_enumerators = RTE_CRYPTO_ASYM_XFORM_TYPE_LIST_END
-; Ignore updates of ring prod/cons
-[suppress_type]
- type_kind = struct
- name = rte_ring
-[suppress_type]
- type_kind = struct
- name = rte_event_ring
-; Ignore ethdev event enum update because new event cannot be
-; received if not registered
+ changed_enumerators = RTE_CRYPTO_ASYM_XFORM_ECPM, RTE_CRYPTO_ASYM_XFORM_TYPE_LIST_END
+
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+; Temporary exceptions till next major ABI version ;
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
+
+; Ignore ethdev event enum update
+; because new event cannot be received if not registered
[suppress_type]
type_kind = enum
- name = rte_eth_event_type
changed_enumerators = RTE_ETH_EVENT_MAX
-; Ignore this enum update as new flags remain unknown to applications
-[suppress_type]
- type_kind = enum
- name = rte_cpu_flag_t
- changed_enumerators = RTE_CPUFLAG_NUMFLAGS
-; Ignore Cryptodev AEAD xform enum and AEAD xform strings change
-; due to addition of Chacha20-Poly1305
-[suppress_type]
- type_kind = enum
- name = rte_crypto_aead_algorithm
- changed_enumerators = RTE_CRYPTO_AEAD_LIST_END
-[suppress_variable]
- name = rte_crypto_aead_algorithm_strings
-; Ignore updates of epoll event
+
+; Ignore fields inserted in cacheline boundary of rte_eth_rxq_info
+; because the struct size is unchanged
[suppress_type]
- type_kind = struct
- name = rte_epoll_event
-; Ignore updates of rte_mbuf_ext_shared_info refcnt_atomic
+ name = rte_eth_rxq_info
+ has_data_member_inserted_between = {offset_of(rx_buf_size), end}
+
+; Ignore fields inserted in place of reserved_opts of rte_security_ipsec_sa_options
[suppress_type]
- name = rte_mbuf_ext_shared_info
- has_data_member_inserted_between = {offset_of(refcnt_atomic), offset_of(refcnt_atomic)}
+ name = rte_security_ipsec_sa_options
+ has_data_member_inserted_between = {offset_of(reserved_opts), end}
-;;;;;;;;;;;;;;;;;;;;;;
-; Temporary exceptions till DPDK 20.11
-;;;;;;;;;;;;;;;;;;;;;;
-; Ignore moving OCTEONTX2 stable functions to INTERNAL
+; Ignore section attribute fixes in experimental regexdev library
[suppress_file]
- file_name_regexp = ^librte_common_octeontx2\.
-[suppress_file]
- file_name_regexp = ^librte_mempool_octeontx2\.
-; Ignore moving mlx5 stable functions to INTERNAL
-[suppress_file]
- file_name_regexp = ^librte_common_mlx5\.
-; Ignore moving DPAAx stable functions to INTERNAL
+ soname_regexp = ^librte_regexdev\.
+
+; Ignore changes in common mlx5 driver, should be all internal
[suppress_file]
- file_name_regexp = ^librte_common_dpaax\.
+ soname_regexp = ^librte_common_mlx5\.
+
+; Ignore visibility fix of local functions in experimental auxiliary driver
[suppress_file]
- file_name_regexp = ^librte_bus_fslmc\.
+ soname_regexp = ^librte_bus_auxiliary\.
+
+; Ignore visibility fix of local functions in experimental gpudev library
[suppress_file]
- file_name_regexp = ^librte_bus_dpaa\.
-[suppress_variable]
- name = rte_dpaa_bpid_info
-[suppress_variable]
- name = rte_dpaa_memsegs
-[suppress_variable]
- name = rte_dpaa2_bpid_info
-[suppress_function]
- name = rte_dpaa2_mbuf_alloc_bulk
+ soname_regexp = ^librte_gpudev\.
+
+; Ignore libabigail false-positive in clang builds, after moving code.
[suppress_function]
- name_regexp = ^dpaa2?_.*tach$
-; Ignore soname changes for experimental libraries
-[suppress_file]
- file_name_regexp = ^librte_bbdev\.
-[suppress_file]
- file_name_regexp = ^librte_bpf\.
-[suppress_file]
- file_name_regexp = ^librte_compressdev\.
-[suppress_file]
- file_name_regexp = ^librte_fib\.
-[suppress_file]
- file_name_regexp = ^librte_flow_classify\.
-[suppress_file]
- file_name_regexp = ^librte_graph\.
-[suppress_file]
- file_name_regexp = ^librte_ipsec\.
-[suppress_file]
- file_name_regexp = ^librte_node\.
-[suppress_file]
- file_name_regexp = ^librte_rcu\.
-[suppress_file]
- file_name_regexp = ^librte_rib\.
-[suppress_file]
- file_name_regexp = ^librte_telemetry\.
-[suppress_file]
- file_name_regexp = ^librte_stack\.
+ name = rte_eal_remote_launch