50 lines
1.9 KiB
Diff
50 lines
1.9 KiB
Diff
From 053024d4cbedc106276e25a7ace5d833f8a62dea Mon Sep 17 00:00:00 2001
|
|
From: compile_success <980965867@qq.com>
|
|
Date: Wed, 20 Dec 2023 01:37:12 +0000
|
|
Subject: [PATCH] fix alloc not free
|
|
|
|
---
|
|
src/lstack/core/lstack_cfg.c | 2 ++
|
|
src/lstack/core/lstack_dpdk.c | 2 ++
|
|
2 files changed, 4 insertions(+)
|
|
|
|
diff --git a/src/lstack/core/lstack_cfg.c b/src/lstack/core/lstack_cfg.c
|
|
index 6324c97..f639473 100644
|
|
--- a/src/lstack/core/lstack_cfg.c
|
|
+++ b/src/lstack/core/lstack_cfg.c
|
|
@@ -1185,11 +1185,13 @@ static int32_t parse_bond_slave_mac(void)
|
|
if (k >= GAZELLE_MAX_BOND_NUM) {
|
|
LSTACK_PRE_LOG(LSTACK_ERR, "cfg: too many slave mac address. The maximum number of mac address is %d.\n",
|
|
GAZELLE_MAX_BOND_NUM);
|
|
+ free(bond_slave_mac_tmp);
|
|
return -EINVAL;
|
|
}
|
|
ret = str_to_eth_addr(mac_addr, g_config_params.bond_slave_mac_addr[k].addr_bytes);
|
|
if (ret != 0) {
|
|
LSTACK_PRE_LOG(LSTACK_ERR, "cfg: invalid device name %s ret=%d.\n", mac_addr, ret);
|
|
+ free(bond_slave_mac_tmp);
|
|
return ret;
|
|
}
|
|
mac_addr = strtok_s(NULL, delim, &tmp);
|
|
diff --git a/src/lstack/core/lstack_dpdk.c b/src/lstack/core/lstack_dpdk.c
|
|
index e20dea8..6933ecd 100644
|
|
--- a/src/lstack/core/lstack_dpdk.c
|
|
+++ b/src/lstack/core/lstack_dpdk.c
|
|
@@ -553,11 +553,13 @@ int32_t dpdk_ethdev_init(int port_id, bool bond_port)
|
|
int slave_id = rte_eth_bond_primary_get(port_id);
|
|
if (slave_id < 0) {
|
|
LSTACK_LOG(ERR, LSTACK, "dpdk get bond primary port failed port = %d\n", slave_id);
|
|
+ free(eth_params);
|
|
return slave_id;
|
|
}
|
|
ret = rte_eth_dev_info_get(slave_id, &slave_dev_info);
|
|
if (ret != 0) {
|
|
LSTACK_LOG(ERR, LSTACK, "dpdk get bond dev info failed ret = %d\n", ret);
|
|
+ free(eth_params);
|
|
return ret;
|
|
}
|
|
dev_info.rx_offload_capa = slave_dev_info.rx_offload_capa;
|
|
--
|
|
2.27.0
|
|
|