From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <dev-bounces@dpdk.org>
Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124])
	by inbox.dpdk.org (Postfix) with ESMTP id C56A043325;
	Tue, 14 Nov 2023 09:28:51 +0100 (CET)
Received: from mails.dpdk.org (localhost [127.0.0.1])
	by mails.dpdk.org (Postfix) with ESMTP id A5C2C427D7;
	Tue, 14 Nov 2023 09:26:19 +0100 (CET)
Received: from szxga01-in.huawei.com (szxga01-in.huawei.com [45.249.212.187])
 by mails.dpdk.org (Postfix) with ESMTP id 710B14027B
 for <dev@dpdk.org>; Tue, 14 Nov 2023 09:25:46 +0100 (CET)
Received: from dggpeml500011.china.huawei.com (unknown [172.30.72.56])
 by szxga01-in.huawei.com (SkyGuard) with ESMTP id 4STzmy2kmJzrTf6;
 Tue, 14 Nov 2023 16:22:26 +0800 (CST)
Received: from localhost.huawei.com (10.50.165.33) by
 dggpeml500011.china.huawei.com (7.185.36.84) with Microsoft SMTP Server
 (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id
 15.1.2507.31; Tue, 14 Nov 2023 16:25:45 +0800
From: Dengdui Huang <huangdengdui@huawei.com>
To: <dev@dpdk.org>
CC: <ferruh.yigit@amd.com>, <stephen@networkplumber.org>,
 <lihuisong@huawei.com>, <fengchengwen@huawei.com>, <liuyonglong@huawei.com>
Subject: [PATCH 32/43] net/memif: use rte strerror
Date: Tue, 14 Nov 2023 16:25:28 +0800
Message-ID: <20231114082539.1858594-33-huangdengdui@huawei.com>
X-Mailer: git-send-email 2.33.0
In-Reply-To: <20231114082539.1858594-1-huangdengdui@huawei.com>
References: <20231114082539.1858594-1-huangdengdui@huawei.com>
MIME-Version: 1.0
Content-Transfer-Encoding: 8bit
Content-Type: text/plain
X-Originating-IP: [10.50.165.33]
X-ClientProxiedBy: dggems703-chm.china.huawei.com (10.3.19.180) To
 dggpeml500011.china.huawei.com (7.185.36.84)
X-CFilter-Loop: Reflected
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <https://mails.dpdk.org/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://mails.dpdk.org/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <https://mails.dpdk.org/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
Errors-To: dev-bounces@dpdk.org

The function strerror() is insecure in a multi-thread environment.
This patch uses rte_strerror() to replace it.

Cc: stable@dpdk.org

Signed-off-by: Dengdui Huang <huangdengdui@huawei.com>
Acked-by: Chengwen Feng <fengchengwen@huawei.com>
---
 drivers/net/memif/memif_socket.c  |  4 ++--
 drivers/net/memif/rte_eth_memif.c | 20 ++++++++++----------
 2 files changed, 12 insertions(+), 12 deletions(-)

diff --git a/drivers/net/memif/memif_socket.c b/drivers/net/memif/memif_socket.c
index 649f8d0e61..592b71979a 100644
--- a/drivers/net/memif/memif_socket.c
+++ b/drivers/net/memif/memif_socket.c
@@ -71,7 +71,7 @@ memif_msg_send_from_queue(struct memif_control_channel *cc)
 	size = memif_msg_send(rte_intr_fd_get(cc->intr_handle), &e->msg,
 			      e->fd);
 	if (size != sizeof(memif_msg_t)) {
-		MIF_LOG(ERR, "sendmsg fail: %s.", strerror(errno));
+		MIF_LOG(ERR, "sendmsg fail: %s.", rte_strerror(errno));
 		ret = -1;
 	} else {
 		MIF_LOG(DEBUG, "Sent msg type %u.", e->msg.type);
@@ -975,7 +975,7 @@ memif_socket_create(char *key, uint8_t listener, bool is_abstract, uid_t owner_u
 	return sock;
 
  error:
-	MIF_LOG(ERR, "Failed to setup socket %s: %s", key, strerror(errno));
+	MIF_LOG(ERR, "Failed to setup socket %s: %s", key, rte_strerror(errno));
 	if (sock != NULL) {
 		rte_intr_instance_free(sock->intr_handle);
 		rte_free(sock);
diff --git a/drivers/net/memif/rte_eth_memif.c b/drivers/net/memif/rte_eth_memif.c
index 7cc8c0da91..f7697394f1 100644
--- a/drivers/net/memif/rte_eth_memif.c
+++ b/drivers/net/memif/rte_eth_memif.c
@@ -805,7 +805,7 @@ eth_memif_tx(void *queue, struct rte_mbuf **bufs, uint16_t nb_pkts)
 			     sizeof(a));
 		if (unlikely(size < 0)) {
 			MIF_LOG(WARNING,
-				"Failed to send interrupt. %s", strerror(errno));
+				"Failed to send interrupt. %s", rte_strerror(errno));
 		}
 	}
 
@@ -960,7 +960,7 @@ eth_memif_tx_zc(void *queue, struct rte_mbuf **bufs, uint16_t nb_pkts)
 				     &a, sizeof(a));
 		if (unlikely(size < 0)) {
 			MIF_LOG(WARNING,
-				"Failed to send interrupt. %s", strerror(errno));
+				"Failed to send interrupt. %s", rte_strerror(errno));
 		}
 	}
 
@@ -1082,27 +1082,27 @@ memif_region_init_shm(struct rte_eth_dev *dev, uint8_t has_buffers)
 
 	r->fd = memfd_create(shm_name, MFD_ALLOW_SEALING);
 	if (r->fd < 0) {
-		MIF_LOG(ERR, "Failed to create shm file: %s.", strerror(errno));
+		MIF_LOG(ERR, "Failed to create shm file: %s.", rte_strerror(errno));
 		ret = -1;
 		goto error;
 	}
 
 	ret = fcntl(r->fd, F_ADD_SEALS, F_SEAL_SHRINK);
 	if (ret < 0) {
-		MIF_LOG(ERR, "Failed to add seals to shm file: %s.", strerror(errno));
+		MIF_LOG(ERR, "Failed to add seals to shm file: %s.", rte_strerror(errno));
 		goto error;
 	}
 
 	ret = ftruncate(r->fd, r->region_size);
 	if (ret < 0) {
-		MIF_LOG(ERR, "Failed to truncate shm file: %s.", strerror(errno));
+		MIF_LOG(ERR, "Failed to truncate shm file: %s.", rte_strerror(errno));
 		goto error;
 	}
 
 	r->addr = mmap(NULL, r->region_size, PROT_READ |
 		       PROT_WRITE, MAP_SHARED, r->fd, 0);
 	if (r->addr == MAP_FAILED) {
-		MIF_LOG(ERR, "Failed to mmap shm region: %s.", strerror(ret));
+		MIF_LOG(ERR, "Failed to mmap shm region: %s.", rte_strerror(ret));
 		ret = -1;
 		goto error;
 	}
@@ -1223,7 +1223,7 @@ memif_init_queues(struct rte_eth_dev *dev)
 		if (rte_intr_fd_get(mq->intr_handle) < 0) {
 			MIF_LOG(WARNING,
 				"Failed to create eventfd for tx queue %d: %s.", i,
-				strerror(errno));
+				rte_strerror(errno));
 		}
 		mq->buffers = NULL;
 		if (pmd->flags & ETH_MEMIF_FLAG_ZERO_COPY) {
@@ -1247,7 +1247,7 @@ memif_init_queues(struct rte_eth_dev *dev)
 		if (rte_intr_fd_get(mq->intr_handle) < 0) {
 			MIF_LOG(WARNING,
 				"Failed to create eventfd for rx queue %d: %s.", i,
-				strerror(errno));
+				rte_strerror(errno));
 		}
 		mq->buffers = NULL;
 		if (pmd->flags & ETH_MEMIF_FLAG_ZERO_COPY) {
@@ -1299,7 +1299,7 @@ memif_connect(struct rte_eth_dev *dev)
 						MAP_SHARED, mr->fd, 0);
 				if (mr->addr == MAP_FAILED) {
 					MIF_LOG(ERR, "mmap failed: %s\n",
-						strerror(errno));
+						rte_strerror(errno));
 					return -1;
 				}
 			}
@@ -1983,7 +1983,7 @@ rte_pmd_memif_probe(struct rte_vdev_device *vdev)
 	 */
 	if (ret < 0 && rte_errno != EEXIST)
 		MIF_LOG(WARNING, "Failed to register mp action callback: %s",
-			strerror(rte_errno));
+			rte_strerror(rte_errno));
 
 	/* use abstract address by default */
 	flags |= ETH_MEMIF_FLAG_SOCKET_ABSTRACT;
-- 
2.33.0