[dpdk-dev] [PATCH] net/i40e: fix vf resource leakage problem

chenqiming_huawei at 163.com chenqiming_huawei at 163.com
Sat Aug 21 10:14:26 CEST 2021


From: Qiming Chen <chenqiming_huawei at 163.com>

In the i40evf_dev_init function, when the MAC memory alloc fails, the
previously initialized vf resource is not released, resulting in leakage.
The patch calls the i40evf_uninit_vf function in the abnormal branch to
release resources.

Fixes: 5c9222058df7 ("i40e: move to drivers/net/")
Cc: stable at dpdk.org

Signed-off-by: Qiming Chen <chenqiming_huawei at 163.com>
---
 drivers/net/i40e/i40e_ethdev_vf.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/drivers/net/i40e/i40e_ethdev_vf.c b/drivers/net/i40e/i40e_ethdev_vf.c
index 003d41373b..f64db72e9a 100644
--- a/drivers/net/i40e/i40e_ethdev_vf.c
+++ b/drivers/net/i40e/i40e_ethdev_vf.c
@@ -1622,6 +1622,7 @@ i40evf_dev_init(struct rte_eth_dev *eth_dev)
 		PMD_INIT_LOG(ERR, "Failed to allocate %d bytes needed to"
 				" store MAC addresses",
 				RTE_ETHER_ADDR_LEN * I40E_NUM_MACADDR_MAX);
+		(void)i40evf_uninit_vf(eth_dev);
 		return -ENOMEM;
 	}
 	rte_ether_addr_copy((struct rte_ether_addr *)hw->mac.addr,
-- 
2.30.1.windows.1



More information about the dev mailing list