[PATCH v1 1/6] net/ice: release ACL slot on entry creation failure

Bruce Richardson bruce.richardson at intel.com
Wed Oct 21 11:17:20 CEST 2026


On Tue, Oct 20, 2026 at 01:11:04PM +0100, Anatoly Burakov wrote:
> ACL entry creation reserves a bitmap slot before programming hardware.
> If programming fails, the reserved slot is not restored, so repeated
> failures consume the available slots. The slot is also left reserved
> when it exceeds the supported entry limit.
> 
> Restore the bitmap slot on both failure paths. Keep it reserved only
> when entry creation succeeds.
> 
> Fixes: 40d466fa9f76 ("net/ice: support ACL filter in DCF")
> Cc: stable at dpdk.org
> 
> Signed-off-by: Anatoly Burakov <anatoly.burakov at intel.com>
Acked-by: Bruce Richardson <bruce.richardson at intel.com>
> ---
>  drivers/net/intel/ice/ice_acl_filter.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/drivers/net/intel/ice/ice_acl_filter.c b/drivers/net/intel/ice/ice_acl_filter.c
> index a91bd558f3..eb5d88ccc5 100644
> --- a/drivers/net/intel/ice/ice_acl_filter.c
> +++ b/drivers/net/intel/ice/ice_acl_filter.c
> @@ -462,6 +462,7 @@ ice_acl_hw_set_conf(struct ice_pf *pf, struct ice_fdir_fltr *input,
>  					 acts, act_cnt, &hw_entry);
>  		if (ret) {
>  			PMD_DRV_LOG(ERR, "Fail to add entry.");
> +			rte_bitmap_set(pf->acl.slots, slot_id);
>  			return ret;
>  		}
>  		rule->entry_id[entry_idx] = entry_id;
> @@ -469,6 +470,7 @@ ice_acl_hw_set_conf(struct ice_pf *pf, struct ice_fdir_fltr *input,
>  	} else {
>  		PMD_DRV_LOG(ERR, "Exceed the maximum entry number(%d)"
>  			    " HW supported!", MAX_ACL_NORMAL_ENTRIES);
> +		rte_bitmap_set(pf->acl.slots, slot_id);
>  		return -1;
>  	}
>  
> -- 
> 2.52.0
> 


More information about the dev mailing list