Thread (5 messages) 5 messages, 5 authors, 17d ago

[PATCH net-next] net/mlx5: Remove max_external_SFs device resource

flat view
COLD17d LANDED: 2 (0M)

From: Tariq Toukan <tariqt@nvidia.com>
Date: 2026-10-11 09:39:10
Also in: linux-doc, linux-rdma, lkml
Subsystem: documentation, mellanox mlx5 core vpi driver, networking drivers, networking [general], the rest · Maintainers: Jonathan Corbet, Saeed Mahameed, Leon Romanovsky, Tariq Toukan, Mark Bloch, Andrew Lunn, "David S. Miller", Eric Dumazet, Jakub Kicinski, Paolo Abeni, Linus Torvalds

Status: Landed in mainline as 001e9181ada8 on 2026-10-17.

2 review trailers.

From: Or Har-Toov <redacted>

The device-level max_external_SFs resource is redundant now that
per-port max_SFs resources are registered on each PF port representor.
Users can look up SF limits per-port directly via 'devlink port show'
to correlate with controller number and pfnum.

Signed-off-by: Or Har-Toov <redacted>
Reviewed-by: Shay Drori <redacted>
Reviewed-by: Moshe Shemesh <redacted>
Signed-off-by: Tariq Toukan <tariqt@nvidia.com>
---
 .../networking/devlink/devlink-resource.rst   |  4 ----
 .../net/ethernet/mellanox/mlx5/core/devlink.h |  1 -
 .../ethernet/mellanox/mlx5/core/sf/hw_table.c | 19 ++++++-------------
 3 files changed, 6 insertions(+), 18 deletions(-)
diff --git a/Documentation/networking/devlink/devlink-resource.rst b/Documentation/networking/devlink/devlink-resource.rst
index 47eec8f875b4..b7172d94b2c6 100644
--- a/Documentation/networking/devlink/devlink-resource.rst
+++ b/Documentation/networking/devlink/devlink-resource.rst
@@ -89,14 +89,12 @@ To list resources for all devlink devices and ports:
     $ devlink resource show
     pci/0000:03:00.0:
       name max_local_SFs size 128 unit entry dpipe_tables none
-      name max_external_SFs size 128 unit entry dpipe_tables none
     pci/0000:03:00.0/196608:
       name max_SFs size 128 unit entry dpipe_tables none
     pci/0000:03:00.0/196609:
       name max_SFs size 128 unit entry dpipe_tables none
     pci/0000:03:00.1:
       name max_local_SFs size 128 unit entry dpipe_tables none
-      name max_external_SFs size 128 unit entry dpipe_tables none
     pci/0000:03:00.1/196708:
       name max_SFs size 128 unit entry dpipe_tables none
     pci/0000:03:00.1/196709:
@@ -124,10 +122,8 @@ To dump only device-level resources across all devices:
     $ devlink resource show scope dev
     pci/0000:03:00.0:
       name max_local_SFs size 128 unit entry dpipe_tables none
-      name max_external_SFs size 128 unit entry dpipe_tables none
     pci/0000:03:00.1:
       name max_local_SFs size 128 unit entry dpipe_tables none
-      name max_external_SFs size 128 unit entry dpipe_tables none
 
 To dump only port-level resources across all devices:
 
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/devlink.h b/drivers/net/ethernet/mellanox/mlx5/core/devlink.h
index 4fbb3926a3e5..b4092eadfe53 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/devlink.h
+++ b/drivers/net/ethernet/mellanox/mlx5/core/devlink.h
@@ -8,7 +8,6 @@
 
 enum mlx5_devlink_resource_id {
 	MLX5_DL_RES_MAX_LOCAL_SFS = 1,
-	MLX5_DL_RES_MAX_EXTERNAL_SFS,
 
 	__MLX5_ID_RES_MAX,
 	MLX5_ID_RES_MAX = __MLX5_ID_RES_MAX - 1,
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/sf/hw_table.c b/drivers/net/ethernet/mellanox/mlx5/core/sf/hw_table.c
index 1724bf7e0e7a..c36dbd7de877 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/sf/hw_table.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/sf/hw_table.c
@@ -262,24 +262,17 @@ static void mlx5_sf_hw_table_res_unregister(struct mlx5_core_dev *dev)
 	devl_resources_unregister(priv_to_devlink(dev));
 }
 
-static int mlx5_sf_hw_table_res_register(struct mlx5_core_dev *dev, u16 max_fn,
-					 u16 max_ext_fn)
+static int mlx5_sf_hw_table_res_register(struct mlx5_core_dev *dev,
+					 u16 max_fn)
 {
 	struct devlink_resource_size_params size_params;
 	struct devlink *devlink = priv_to_devlink(dev);
-	int err;
 
 	devlink_resource_size_params_init(&size_params, max_fn, max_fn, 1,
 					  DEVLINK_RESOURCE_UNIT_ENTRY);
-	err = devl_resource_register(devlink, "max_local_SFs", max_fn, MLX5_DL_RES_MAX_LOCAL_SFS,
-				     DEVLINK_RESOURCE_ID_PARENT_TOP, &size_params);
-	if (err)
-		return err;
-
-	devlink_resource_size_params_init(&size_params, max_ext_fn, max_ext_fn, 1,
-					  DEVLINK_RESOURCE_UNIT_ENTRY);
-	return devl_resource_register(devlink, "max_external_SFs", max_ext_fn,
-				      MLX5_DL_RES_MAX_EXTERNAL_SFS, DEVLINK_RESOURCE_ID_PARENT_TOP,
+	return devl_resource_register(devlink, "max_local_SFs", max_fn,
+				      MLX5_DL_RES_MAX_LOCAL_SFS,
+				      DEVLINK_RESOURCE_ID_PARENT_TOP,
 				      &size_params);
 }
 
@@ -303,7 +296,7 @@ int mlx5_sf_hw_table_init(struct mlx5_core_dev *dev)
 	if (err)
 		return err;
 
-	if (mlx5_sf_hw_table_res_register(dev, max_fn, max_ext_fn))
+	if (mlx5_sf_hw_table_res_register(dev, max_fn))
 		mlx5_core_dbg(dev, "failed to register max SFs resources");
 
 	if (!max_fn && !max_ext_fn && !mlx5_esw_has_spf_sfs(dev))
base-commit: d8674294aefef02266c4d47ad10131f1bffbe534
-- 
2.44.0
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help