The function strerror() is insecure in a multi-thread environment. This patch uses rte_strerror() to replace it.
Cc: sta...@dpdk.org Signed-off-by: Dengdui Huang <huangdeng...@huawei.com> Acked-by: Chengwen Feng <fengcheng...@huawei.com> --- drivers/dma/idxd/idxd_bus.c | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/drivers/dma/idxd/idxd_bus.c b/drivers/dma/idxd/idxd_bus.c index 3b2d4c2b65..a230976c98 100644 --- a/drivers/dma/idxd/idxd_bus.c +++ b/drivers/dma/idxd/idxd_bus.c @@ -145,7 +145,7 @@ read_wq_string(struct rte_dsa_device *dev, const char *filename, fd = open(sysfs_node, O_RDONLY); if (fd < 0) { IDXD_PMD_ERR("%s(): opening file '%s' failed: %s", - __func__, sysfs_node, strerror(errno)); + __func__, sysfs_node, rte_strerror(errno)); return -1; } @@ -153,7 +153,7 @@ read_wq_string(struct rte_dsa_device *dev, const char *filename, close(fd); if (len < 0) { IDXD_PMD_ERR("%s(): error reading file '%s': %s", - __func__, sysfs_node, strerror(errno)); + __func__, sysfs_node, rte_strerror(errno)); return -1; } value[len] = '\0'; @@ -173,13 +173,13 @@ read_wq_int(struct rte_dsa_device *dev, const char *filename, f = fopen(sysfs_node, "r"); if (f == NULL) { IDXD_PMD_ERR("%s(): opening file '%s' failed: %s", - __func__, sysfs_node, strerror(errno)); + __func__, sysfs_node, rte_strerror(errno)); return -1; } if (fscanf(f, "%d", value) != 1) { IDXD_PMD_ERR("%s(): error reading file '%s': %s", - __func__, sysfs_node, strerror(errno)); + __func__, sysfs_node, rte_strerror(errno)); ret = -1; } @@ -200,13 +200,13 @@ read_device_int(struct rte_dsa_device *dev, const char *filename, f = fopen(sysfs_node, "r"); if (f == NULL) { IDXD_PMD_ERR("%s(): opening file '%s' failed: %s", - __func__, sysfs_node, strerror(errno)); + __func__, sysfs_node, rte_strerror(errno)); return -1; } if (fscanf(f, "%d", value) != 1) { IDXD_PMD_ERR("%s(): error reading file '%s': %s", - __func__, sysfs_node, strerror(errno)); + __func__, sysfs_node, rte_strerror(errno)); ret = -1; } @@ -317,7 +317,7 @@ dsa_scan(void) if (errno == ENOENT) return 0; /* no bus, return without error */ IDXD_PMD_ERR("%s(): opendir '%s' failed: %s", - __func__, path, strerror(errno)); + __func__, path, rte_strerror(errno)); return -1; } -- 2.33.0