net/ice: fix initialization with 8 ports

Message ID 20250930142850.1782615-1-bruce.richardson@intel.com (mailing list archive)
State Accepted
Delegated to: Bruce Richardson
Headers
Series net/ice: fix initialization with 8 ports |

Checks

Context Check Description
ci/checkpatch success coding style OK
ci/loongarch-compilation success Compilation OK
ci/loongarch-unit-testing success Unit Testing PASS
ci/Intel-compilation success Compilation OK
ci/iol-mellanox-Functional success Functional Testing PASS
ci/iol-marvell-Functional success Functional Testing PASS
ci/intel-Testing success Testing PASS
ci/iol-broadcom-Performance success Performance Testing PASS
ci/iol-sample-apps-testing success Testing PASS
ci/iol-intel-Functional success Functional Testing PASS
ci/iol-unit-amd64-testing success Testing PASS
ci/github-robot: build success github build: passed
ci/github-robot-post success github post: success
ci/intel-Functional success Functional PASS
ci/aws-unit-testing success Unit Testing PASS
ci/iol-compile-amd64-testing success Testing PASS
ci/iol-compile-arm64-testing success Testing PASS
ci/iol-mellanox-Performance success Performance Testing PASS
ci/iol-unit-arm64-testing success Testing PASS
ci/iol-intel-Performance success Performance Testing PASS

Commit Message

Bruce Richardson Sept. 30, 2025, 2:28 p.m. UTC
When initializing an 8-port device, the ACL configuration
failed with the adminq returning an ENOMEM status from the
sixth port onwards. Fix this issue by halving the depth, and
therefore the space required, when using a device with >4 PFs.

Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
---
 drivers/net/intel/ice/ice_acl_filter.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)
  

Comments

Rybalchenko, Kirill Oct. 9, 2025, 1:28 p.m. UTC | #1
> -----Original Message-----
> From: Bruce Richardson <bruce.richardson@intel.com>
> Sent: Tuesday 30 September 2025 15:29
> To: dev@dpdk.org
> Cc: Richardson, Bruce <bruce.richardson@intel.com>
> Subject: [PATCH] net/ice: fix initialization with 8 ports
> 
> When initializing an 8-port device, the ACL configuration
> failed with the adminq returning an ENOMEM status from the
> sixth port onwards. Fix this issue by halving the depth, and
> therefore the space required, when using a device with >4 PFs.
> 
> Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
> ---

Acked-by: Kirill Rybalchenko <kirill.rybalchenko@intel.com>

>  drivers/net/intel/ice/ice_acl_filter.c | 5 ++++-
>  1 file changed, 4 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/net/intel/ice/ice_acl_filter.c
> b/drivers/net/intel/ice/ice_acl_filter.c
> index 83cb3e36f9..38e30a4f62 100644
> --- a/drivers/net/intel/ice/ice_acl_filter.c
> +++ b/drivers/net/intel/ice/ice_acl_filter.c
> @@ -114,7 +114,10 @@ ice_acl_setup(struct ice_pf *pf)
>  	else
>  		params.width = ICE_AQC_ACL_KEY_WIDTH_BYTES * 3;
> 
> -	params.depth = ICE_AQC_ACL_TCAM_DEPTH;
> +	if (pf_num > 4)
> +		params.depth = ICE_AQC_ACL_TCAM_DEPTH / 2;
> +	else
> +		params.depth = ICE_AQC_ACL_TCAM_DEPTH;
>  	params.entry_act_pairs = 1;
>  	params.concurr = false;
> 
> --
> 2.43.0
  
Bruce Richardson Oct. 9, 2025, 3:23 p.m. UTC | #2
On Thu, Oct 09, 2025 at 02:28:00PM +0100, Rybalchenko, Kirill wrote:
> 
> 
> > -----Original Message-----
> > From: Bruce Richardson <bruce.richardson@intel.com>
> > Sent: Tuesday 30 September 2025 15:29
> > To: dev@dpdk.org
> > Cc: Richardson, Bruce <bruce.richardson@intel.com>
> > Subject: [PATCH] net/ice: fix initialization with 8 ports
> > 
> > When initializing an 8-port device, the ACL configuration
> > failed with the adminq returning an ENOMEM status from the
> > sixth port onwards. Fix this issue by halving the depth, and
> > therefore the space required, when using a device with >4 PFs.
> > 
> > Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
> > ---
> 
> Acked-by: Kirill Rybalchenko <kirill.rybalchenko@intel.com>
> 
Applied to dpdk-next-net-intel.

/Bruce
  

Patch

diff --git a/drivers/net/intel/ice/ice_acl_filter.c b/drivers/net/intel/ice/ice_acl_filter.c
index 83cb3e36f9..38e30a4f62 100644
--- a/drivers/net/intel/ice/ice_acl_filter.c
+++ b/drivers/net/intel/ice/ice_acl_filter.c
@@ -114,7 +114,10 @@  ice_acl_setup(struct ice_pf *pf)
 	else
 		params.width = ICE_AQC_ACL_KEY_WIDTH_BYTES * 3;
 
-	params.depth = ICE_AQC_ACL_TCAM_DEPTH;
+	if (pf_num > 4)
+		params.depth = ICE_AQC_ACL_TCAM_DEPTH / 2;
+	else
+		params.depth = ICE_AQC_ACL_TCAM_DEPTH;
 	params.entry_act_pairs = 1;
 	params.concurr = false;