From: Long Wu <[email protected]>
Close interface use "rte_eth_dev_destroy()" to destroy representor. The
"rte_eth_dev_destroy()" will call "rte_eth_dev_release_port()" but the
"rte_eth_dev_close()" also calls "rte_eth_dev_release_port()". This will
cause Segmentation fault.
Remove the "rte_eth_dev_destroy()" in nfp representor close interface.
Fixes: a135bc1644d6 ("net/nfp: fix resource leak for flower firmware")
Cc: [email protected]
Cc: [email protected]
Signed-off-by: Long Wu <[email protected]>
Reviewed-by: Chaoyong He <[email protected]>
Reviewed-by: Peng Zhang <[email protected]>
---
drivers/net/nfp/flower/nfp_flower_representor.c | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)
diff --git a/drivers/net/nfp/flower/nfp_flower_representor.c
b/drivers/net/nfp/flower/nfp_flower_representor.c
index 7d8c055b80..27ea3891bd 100644
--- a/drivers/net/nfp/flower/nfp_flower_representor.c
+++ b/drivers/net/nfp/flower/nfp_flower_representor.c
@@ -314,13 +314,13 @@ nfp_flower_repr_free(struct nfp_flower_representor *repr,
{
switch (repr_type) {
case NFP_REPR_TYPE_PHYS_PORT:
- rte_eth_dev_destroy(repr->eth_dev, nfp_flower_repr_uninit);
+ nfp_flower_repr_uninit(repr->eth_dev);
break;
case NFP_REPR_TYPE_PF:
- rte_eth_dev_destroy(repr->eth_dev, nfp_flower_pf_repr_uninit);
+ nfp_flower_pf_repr_uninit(repr->eth_dev);
break;
case NFP_REPR_TYPE_VF:
- rte_eth_dev_destroy(repr->eth_dev, nfp_flower_repr_uninit);
+ nfp_flower_repr_uninit(repr->eth_dev);
break;
default:
PMD_DRV_LOG(ERR, "Unsupported repr port type.");
--
2.39.1