[PATCH net-next V2 0/3] net/mlx5: ICM page management in VHCA_ID mode

Tariq Toukan
2026-05-06T13:33:28Z

Hi,

Find detailed description by Moshe below.

Regards,
Tariq

This series adds driver support for the VHCA_ID page management mode.
When firmware and driver support this mode, ICM (Interconnect Context
Memory) page management uses the device vhca_id as the function
identifier in MANAGE_PAGES, QUERY_PAGES, and page request events instead
of the legacy function_id + ec_function pair.

Background
Firmware can operate page management in two modes:
FUNC_ID mode (current): Function identity is (function_id, ec_function).
This remains the default and is used for boot pages and when the new
mode capability is not set.
VHCA_ID mode (new): Function identity is vhca_id only; ec_function is
ignored. This aligns page management with the vhca_id-based model used
by other firmware commands and simplifies identification on SmartNIC and
multi-function setups.

---

V2:
- Cache vhca_id to type mapping to provide lockless lookup.
- Store the resolved type on each fw_page at allocation time so reclaim
and release paths read it directly without any lookup.
- Reorder erase old key and insert new key on migrate function.
- Fixed comment on mlx5_satisfy_startup_pages.

V1: https://lore.kernel.org/all/20260501044156.260875-1-tariqt@nvidia.com/

Moshe Shemesh (3):
net/mlx5: Relax capability check for eswitch query paths
net/mlx5: Make debugfs page counters by function type dynamic
net/mlx5: Add VHCA_ID page management mode support

.../net/ethernet/mellanox/mlx5/core/debugfs.c | 39 ++-
.../ethernet/mellanox/mlx5/core/esw/ipsec.c | 2 +-
.../net/ethernet/mellanox/mlx5/core/eswitch.c | 49 +++-
.../net/ethernet/mellanox/mlx5/core/eswitch.h | 8 +
.../mellanox/mlx5/core/eswitch_offloads.c | 14 +-
.../net/ethernet/mellanox/mlx5/core/main.c | 10 +-
.../ethernet/mellanox/mlx5/core/pagealloc.c | 250 +++++++++++++-----
include/linux/mlx5/driver.h | 9 +
8 files changed, 304 insertions(+), 77 deletions(-)

base-commit: 7e0cccae6b45b12eaf71fc3ab8eb133bb50b28ad
--
2.44.0