[dpdk-dev] [PATCH 1/2] net/bonding: free mempool used in mode6

xiangxia.m.yue at gmail.com xiangxia.m.yue at gmail.com
Wed Apr 11 06:34:28 CEST 2018


From: Tonghao Zhang <xiangxia.m.yue at gmail.com>

When creating bond device with mode6, dpdk will create
mempool for arp packets. If free the bond device and
create it with same name, there will be an error. Because
the mempool is not freed when destroying bond device.

Fixes: 06fe78b9 ("bond: add mode 6")
Fixes: ea0c20ea ("apps: use helper to create mbuf pools")
Cc: stable at dpdk.org
Signed-off-by: Tonghao Zhang <xiangxia.m.yue at gmail.com>
---
 drivers/net/bonding/rte_eth_bond_pmd.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/drivers/net/bonding/rte_eth_bond_pmd.c b/drivers/net/bonding/rte_eth_bond_pmd.c
index 9b02850..4bc2a01 100644
--- a/drivers/net/bonding/rte_eth_bond_pmd.c
+++ b/drivers/net/bonding/rte_eth_bond_pmd.c
@@ -3127,6 +3127,10 @@ struct bwg_slave {
 	eth_dev->tx_pkt_burst = NULL;
 
 	internals = eth_dev->data->dev_private;
+	/* Try to release mempool used in mode6. If the bond
+	 * device is not mode6, free the NULL is not problem.
+	 */
+	rte_mempool_free(internals->mode6.mempool);
 	rte_bitmap_free(internals->vlan_filter_bmp);
 	rte_free(internals->vlan_filter_bmpmem);
 	rte_free(eth_dev->data->dev_private);
-- 
1.8.3.1



More information about the dev mailing list