When the port is started, if the Tx queue fails to be started, the map interrupt should be rolled back.
Fixes: fdfde7a4a0f8 ("net/hns3: fix mbuf leakage") Cc: sta...@dpdk.org Signed-off-by: Dengdui Huang <huangdeng...@huawei.com> --- drivers/net/hns3/hns3_ethdev.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/drivers/net/hns3/hns3_ethdev.c b/drivers/net/hns3/hns3_ethdev.c index 20ad249b8b..2b56b6e44e 100644 --- a/drivers/net/hns3/hns3_ethdev.c +++ b/drivers/net/hns3/hns3_ethdev.c @@ -5122,7 +5122,7 @@ hns3_dev_start(struct rte_eth_dev *dev) */ ret = hns3_start_all_txqs(dev); if (ret) - goto map_rx_inter_err; + goto start_all_txqs_fail; ret = hns3_start_all_rxqs(dev); if (ret) @@ -5155,6 +5155,8 @@ hns3_dev_start(struct rte_eth_dev *dev) start_all_rxqs_fail: hns3_stop_all_txqs(dev); +start_all_txqs_fail: + hns3_unmap_rx_interrupt(dev); map_rx_inter_err: (void)hns3_do_stop(hns); do_start_fail: -- 2.33.0