[PATCH v3 17/42] common/mlx5: use rte strerror
Dengdui Huang
huangdengdui at huawei.com
Tue Nov 14 13:35:27 CET 2023
The function strerror() is insecure in a multi-thread environment.
This patch uses rte_strerror() to replace it.
Cc: stable at dpdk.org
Signed-off-by: Dengdui Huang <huangdengdui at huawei.com>
Acked-by: Chengwen Feng <fengchengwen at huawei.com>
---
drivers/common/mlx5/linux/mlx5_nl.c | 12 ++++++------
drivers/common/mlx5/mlx5_common.c | 6 +++---
drivers/common/mlx5/mlx5_devx_cmds.c | 2 +-
3 files changed, 10 insertions(+), 10 deletions(-)
diff --git a/drivers/common/mlx5/linux/mlx5_nl.c b/drivers/common/mlx5/linux/mlx5_nl.c
index 28a1f56dba..1de867089f 100644
--- a/drivers/common/mlx5/linux/mlx5_nl.c
+++ b/drivers/common/mlx5/linux/mlx5_nl.c
@@ -547,7 +547,7 @@ mlx5_nl_mac_addr_list(int nlsk_fd, unsigned int iface_idx,
return 0;
error:
DRV_LOG(DEBUG, "Interface %u cannot retrieve MAC address list %s",
- iface_idx, strerror(rte_errno));
+ iface_idx, rte_strerror(rte_errno));
return -rte_errno;
}
@@ -617,7 +617,7 @@ mlx5_nl_mac_addr_modify(int nlsk_fd, unsigned int iface_idx,
DRV_LOG(DEBUG,
"Interface %u cannot %s MAC address %s %s",
iface_idx,
- add ? "add" : "remove", m, strerror(rte_errno));
+ add ? "add" : "remove", m, rte_strerror(rte_errno));
}
#endif
return -rte_errno;
@@ -704,7 +704,7 @@ mlx5_nl_vf_mac_addr_modify(int nlsk_fd, unsigned int iface_idx,
RTE_ETHER_ADDR_PRT_FMT " : %s",
vf_index,
RTE_ETHER_ADDR_BYTES(mac),
- strerror(rte_errno));
+ rte_strerror(rte_errno));
return -rte_errno;
}
@@ -929,7 +929,7 @@ mlx5_nl_promisc(int nlsk_fd, unsigned int iface_idx, int enable)
DRV_LOG(DEBUG,
"Interface %u cannot %s promisc mode: Netlink error %s",
iface_idx, enable ? "enable" : "disable",
- strerror(rte_errno));
+ rte_strerror(rte_errno));
return ret;
}
@@ -956,7 +956,7 @@ mlx5_nl_allmulti(int nlsk_fd, unsigned int iface_idx, int enable)
DRV_LOG(DEBUG,
"Interface %u cannot %s allmulti : Netlink error %s",
iface_idx, enable ? "enable" : "disable",
- strerror(rte_errno));
+ rte_strerror(rte_errno));
return ret;
}
@@ -1934,7 +1934,7 @@ mlx5_nl_read_events(int nlsk_fd, mlx5_nl_event_cb *cb, void *cb_arg)
if (errno == EINTR)
continue;
DRV_LOG(DEBUG, "Failed to receive netlink message: %s",
- strerror(errno));
+ rte_strerror(errno));
rte_errno = errno;
return -rte_errno;
}
diff --git a/drivers/common/mlx5/mlx5_common.c b/drivers/common/mlx5/mlx5_common.c
index ca8543e36e..7aafd0083d 100644
--- a/drivers/common/mlx5/mlx5_common.c
+++ b/drivers/common/mlx5/mlx5_common.c
@@ -762,7 +762,7 @@ mlx5_common_dev_create(struct rte_device *eal_dev, uint32_t classes,
ret = mlx5_common_config_get(mkvlist, &cdev->config);
if (ret < 0) {
DRV_LOG(ERR, "Failed to process device arguments: %s",
- strerror(rte_errno));
+ rte_strerror(rte_errno));
rte_free(cdev);
return NULL;
}
@@ -837,7 +837,7 @@ mlx5_common_probe_again_args_validate(struct mlx5_common_device *cdev,
ret = mlx5_common_config_get(mkvlist, config);
if (ret) {
DRV_LOG(ERR, "Failed to process device configure: %s",
- strerror(rte_errno));
+ rte_strerror(rte_errno));
mlx5_free(config);
return ret;
}
@@ -1011,7 +1011,7 @@ mlx5_common_dev_probe(struct rte_device *eal_dev)
if (ret) {
DRV_LOG(ERR,
"Probe again parameters aren't compatible : %s",
- strerror(rte_errno));
+ rte_strerror(rte_errno));
goto class_err;
}
}
diff --git a/drivers/common/mlx5/mlx5_devx_cmds.c b/drivers/common/mlx5/mlx5_devx_cmds.c
index 4d8818924a..b33b5d3044 100644
--- a/drivers/common/mlx5/mlx5_devx_cmds.c
+++ b/drivers/common/mlx5/mlx5_devx_cmds.c
@@ -640,7 +640,7 @@ mlx5_devx_cmd_match_sample_info_query(void *ctx, uint32_t sample_field_id,
rc = mlx5_glue->devx_general_cmd(ctx, in, sizeof(in), out, sizeof(out));
if (rc) {
DRV_LOG(ERR, "Failed to query match sample info using DevX: %s",
- strerror(rc));
+ rte_strerror(rc));
rte_errno = rc;
return -rc;
}
--
2.33.0
More information about the dev
mailing list