[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