[PATCH] net/iavf: fix device stop
Radu Nicolau
radu.nicolau at intel.com
Fri May 6 11:45:31 CEST 2022
Move security context destroy from device stop to device close function.
Deleting the context on device stop can prevent the application from
properly cleaning and releasing resources.
Fixes: 6bc987ecb860 ("net/iavf: support IPsec inline crypto")
Cc: stable at dpdk.org
Signed-off-by: Radu Nicolau <radu.nicolau at intel.com>
---
drivers/net/iavf/iavf_ethdev.c | 6 +++---
drivers/net/iavf/iavf_ipsec_crypto.c | 2 --
2 files changed, 3 insertions(+), 5 deletions(-)
diff --git a/drivers/net/iavf/iavf_ethdev.c b/drivers/net/iavf/iavf_ethdev.c
index 7d093bdc24..839831882d 100644
--- a/drivers/net/iavf/iavf_ethdev.c
+++ b/drivers/net/iavf/iavf_ethdev.c
@@ -1035,9 +1035,6 @@ iavf_dev_stop(struct rte_eth_dev *dev)
iavf_add_del_mc_addr_list(adapter, vf->mc_addrs, vf->mc_addrs_num,
false);
- /* free iAVF security device context all related resources */
- iavf_security_ctx_destroy(adapter);
-
adapter->stopped = 1;
dev->data->dev_started = 0;
@@ -2625,6 +2622,9 @@ iavf_dev_close(struct rte_eth_dev *dev)
ret = iavf_dev_stop(dev);
+ /* free iAVF security device context all related resources */
+ iavf_security_ctx_destroy(adapter);
+
iavf_flow_flush(dev, NULL);
iavf_flow_uninit(adapter);
diff --git a/drivers/net/iavf/iavf_ipsec_crypto.c b/drivers/net/iavf/iavf_ipsec_crypto.c
index b1949cee91..6faebf3270 100644
--- a/drivers/net/iavf/iavf_ipsec_crypto.c
+++ b/drivers/net/iavf/iavf_ipsec_crypto.c
@@ -1551,8 +1551,6 @@ iavf_security_ctx_destroy(struct iavf_adapter *adapter)
if (iavf_sctx == NULL)
return -ENODEV;
- /* TODO: Add resources cleanup */
-
/* free and reset security data structures */
rte_free(iavf_sctx);
rte_free(sctx);
--
2.25.1
More information about the stable
mailing list