[PATCH] net/ice: fix ACL filter uninit
Medvedkin, Vladimir
vladimir.medvedkin at intel.com
Tue Feb 25 19:16:36 CET 2025
Acked-by: Vladimir Medvedkin <vladimir.medvedkin at intel.com>
On 21/02/2025 08:25, Mingjin Ye wrote:
> The pf has enabled the ACL filter, so uninit is no longer limited
> to the DCF.
>
> Fixes: a9d612291c2d ("net/ice: support IPv4 fragments in ACL filters")
>
> Signed-off-by: Mingjin Ye <mingjinx.ye at intel.com>
> ---
> drivers/net/intel/ice/ice_acl_filter.c | 48 +++++++++++++-------------
> 1 file changed, 24 insertions(+), 24 deletions(-)
>
> diff --git a/drivers/net/intel/ice/ice_acl_filter.c b/drivers/net/intel/ice/ice_acl_filter.c
> index 04c17a98ed..83cb3e36f9 100644
> --- a/drivers/net/intel/ice/ice_acl_filter.c
> +++ b/drivers/net/intel/ice/ice_acl_filter.c
> @@ -278,26 +278,28 @@ ice_acl_prof_init(struct ice_pf *pf)
> if (ret)
> goto err_add_prof_ipv4_sctp;
>
> - for (i = 0; i < pf->main_vsi->idx; i++) {
> - ret = ice_flow_assoc_prof(hw, ICE_BLK_ACL, prof_ipv4, i);
> - if (ret)
> - goto err_assoc_prof;
> -
> - ret = ice_flow_assoc_prof(hw, ICE_BLK_ACL, prof_ipv4_frag, i);
> - if (ret)
> - goto err_assoc_prof;
> -
> - ret = ice_flow_assoc_prof(hw, ICE_BLK_ACL, prof_ipv4_udp, i);
> - if (ret)
> - goto err_assoc_prof;
> -
> - ret = ice_flow_assoc_prof(hw, ICE_BLK_ACL, prof_ipv4_tcp, i);
> - if (ret)
> - goto err_assoc_prof;
> -
> - ret = ice_flow_assoc_prof(hw, ICE_BLK_ACL, prof_ipv4_sctp, i);
> - if (ret)
> - goto err_assoc_prof;
> + if (hw->dcf_enabled) {
> + for (i = 0; i < pf->main_vsi->idx; i++) {
> + ret = ice_flow_assoc_prof(hw, ICE_BLK_ACL, prof_ipv4, i);
> + if (ret)
> + goto err_assoc_prof;
> +
> + ret = ice_flow_assoc_prof(hw, ICE_BLK_ACL, prof_ipv4_frag, i);
> + if (ret)
> + goto err_assoc_prof;
> +
> + ret = ice_flow_assoc_prof(hw, ICE_BLK_ACL, prof_ipv4_udp, i);
> + if (ret)
> + goto err_assoc_prof;
> +
> + ret = ice_flow_assoc_prof(hw, ICE_BLK_ACL, prof_ipv4_tcp, i);
> + if (ret)
> + goto err_assoc_prof;
> +
> + ret = ice_flow_assoc_prof(hw, ICE_BLK_ACL, prof_ipv4_sctp, i);
> + if (ret)
> + goto err_assoc_prof;
> + }
> }
> return 0;
>
> @@ -1082,10 +1084,8 @@ ice_acl_uninit(struct ice_adapter *ad)
> struct ice_pf *pf = &ad->pf;
> struct ice_hw *hw = ICE_PF_TO_HW(pf);
>
> - if (ad->hw.dcf_enabled) {
> - ice_deinit_acl(pf);
> - ice_acl_prof_free(hw);
> - }
> + ice_deinit_acl(pf);
> + ice_acl_prof_free(hw);
> }
>
> static struct
--
Regards,
Vladimir
More information about the dev
mailing list