net/ice: fix core dump when device reset

Message ID 20201110020150.173762-1-simei.su@intel.com (mailing list archive)
State Accepted, archived
Delegated to: Qi Zhang
Headers
Series net/ice: fix core dump when device reset |

Checks

Context Check Description
ci/checkpatch warning coding style issues
ci/iol-broadcom-Performance success Performance Testing PASS
ci/iol-broadcom-Functional success Functional Testing PASS
ci/iol-testing success Testing PASS
ci/iol-intel-Performance success Performance Testing PASS
ci/travis-robot success Travis build: passed
ci/iol-mellanox-Performance success Performance Testing PASS
ci/Intel-compilation success Compilation OK
ci/iol-intel-Functional success Functional Testing PASS

Commit Message

Simei Su Nov. 10, 2020, 2:01 a.m. UTC
  When device resets, it should not implememt ACL initialization
which is only executed in DCF. This patch disable ACL init and
uninit when in DPDK PF only mode.

Fixes: 40d466fa9f76 ("net/ice: support ACL filter in DCF")

Signed-off-by: Simei Su <simei.su@intel.com>
---
 drivers/net/ice/ice_acl_filter.c | 12 ++++++++----
 1 file changed, 8 insertions(+), 4 deletions(-)
  

Comments

Qi Zhang Nov. 10, 2020, 2:41 a.m. UTC | #1
> -----Original Message-----
> From: Su, Simei <simei.su@intel.com>
> Sent: Tuesday, November 10, 2020 10:02 AM
> To: Zhang, Qi Z <qi.z.zhang@intel.com>
> Cc: dev@dpdk.org; Wang, Haiyue <haiyue.wang@intel.com>; Ding, Xuan
> <xuan.ding@intel.com>; Su, Simei <simei.su@intel.com>
> Subject: [PATCH] net/ice: fix core dump when device reset
> 
> When device resets, it should not implememt ACL initialization which is only
> executed in DCF. This patch disable ACL init and uninit when in DPDK PF only
> mode.
> 
> Fixes: 40d466fa9f76 ("net/ice: support ACL filter in DCF")
> 
> Signed-off-by: Simei Su <simei.su@intel.com>

Acked-by: Qi Zhang <qi.z.zhang@intel.com>

Applied to dpdk-next-net-intel.

Thanks
Qi
  
Xie, WeiX Nov. 10, 2020, 2:56 a.m. UTC | #2
Tested-by:  Xie,WeiX < weix.xie@intel.com>

Regards,
Xie Wei


> -----Original Message-----
> From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Simei Su
> Sent: Tuesday, November 10, 2020 10:02 AM
> To: Zhang, Qi Z <qi.z.zhang@intel.com>
> Cc: dev@dpdk.org; Wang, Haiyue <haiyue.wang@intel.com>; Ding, Xuan
> <xuan.ding@intel.com>; Su, Simei <simei.su@intel.com>
> Subject: [dpdk-dev] [PATCH] net/ice: fix core dump when device reset
> 
> When device resets, it should not implememt ACL initialization which is only
> executed in DCF. This patch disable ACL init and uninit when in DPDK PF only
> mode.
  

Patch

diff --git a/drivers/net/ice/ice_acl_filter.c b/drivers/net/ice/ice_acl_filter.c
index ca483f0..8ca88d2 100644
--- a/drivers/net/ice/ice_acl_filter.c
+++ b/drivers/net/ice/ice_acl_filter.c
@@ -935,6 +935,9 @@  ice_acl_init(struct ice_adapter *ad)
 	struct ice_hw *hw = ICE_PF_TO_HW(pf);
 	struct ice_flow_parser *parser = &ice_acl_parser;
 
+	if (!ad->hw.dcf_enabled)
+		return 0;
+
 	ret = ice_acl_prof_alloc(hw);
 	if (ret) {
 		PMD_DRV_LOG(ERR, "Cannot allocate memory for "
@@ -979,10 +982,11 @@  ice_acl_uninit(struct ice_adapter *ad)
 	struct ice_hw *hw = ICE_PF_TO_HW(pf);
 	struct ice_flow_parser *parser = &ice_acl_parser;
 
-	ice_unregister_parser(parser, ad);
-
-	ice_deinit_acl(pf);
-	ice_acl_prof_free(hw);
+	if (ad->hw.dcf_enabled) {
+		ice_unregister_parser(parser, ad);
+		ice_deinit_acl(pf);
+		ice_acl_prof_free(hw);
+	}
 }
 
 static struct