[v2,1/6] common/mlx5: consider local functions as internal
Checks
Commit Message
The functions which are not explicitly marked as internal
were exported because the local catch-all rule was missing in the
version script.
After adding the missing rule, all local functions are hidden.
The function mlx5_get_device_guid is used in another library,
so it needs to be exported (as internal).
Because the local functions were exported as non-internal
in DPDK 21.11, any change in these functions would break the ABI.
An ABI exception is added for this library, considering that all
functions are either local or internal.
Signed-off-by: Michael Baum <michaelba@nvidia.com>
---
devtools/libabigail.abignore | 4 ++++
drivers/common/mlx5/linux/mlx5_common_os.h | 1 +
drivers/common/mlx5/version.map | 3 +++
3 files changed, 8 insertions(+)
@@ -20,3 +20,7 @@
; Ignore changes to rte_crypto_asym_op, asymmetric crypto API is experimental
[suppress_type]
name = rte_crypto_asym_op
+
+; Ignore changes in common mlx5 driver, should be all internal
+[suppress_file]
+ soname_regexp = ^librte_common_mlx5\.
\ No newline at end of file
@@ -300,6 +300,7 @@ mlx5_set_context_attr(struct rte_device *dev, struct ibv_context *ctx);
* 0 if OFED doesn't support.
* >0 if success.
*/
+__rte_internal
int
mlx5_get_device_guid(const struct rte_pci_addr *dev, uint8_t *guid, size_t len);
@@ -80,6 +80,7 @@ INTERNAL {
mlx5_free;
+ mlx5_get_device_guid; # WINDOWS_NO_EXPORT
mlx5_get_ifname_sysfs; # WINDOWS_NO_EXPORT
mlx5_get_pci_addr; # WINDOWS_NO_EXPORT
@@ -149,4 +150,6 @@ INTERNAL {
mlx5_mp_req_mempool_reg;
mlx5_mr_mempool2mr_bh;
mlx5_mr_mempool_populate_cache;
+
+ local: *;
};