|
|
Log in / Subscribe / Register

net/mlx5: Add satellite PF support

From:  Tariq Toukan <tariqt-AT-nvidia.com>
To:  Eric Dumazet <edumazet-AT-google.com>, Jakub Kicinski <kuba-AT-kernel.org>, Paolo Abeni <pabeni-AT-redhat.com>, Andrew Lunn <andrew+netdev-AT-lunn.ch>, "David S. Miller" <davem-AT-davemloft.net>
Subject:  [PATCH net-next 00/12] net/mlx5: Add satellite PF support
Date:  Thu, 21 May 2026 14:08:31 +0300
Message-ID:  <20260521110843.367329-1-tariqt@nvidia.com>
Cc:  Saeed Mahameed <saeedm-AT-nvidia.com>, Leon Romanovsky <leon-AT-kernel.org>, Tariq Toukan <tariqt-AT-nvidia.com>, Mark Bloch <mbloch-AT-nvidia.com>, "Simon Horman" <horms-AT-kernel.org>, Adithya Jayachandran <ajayachandra-AT-nvidia.com>, Jiri Pirko <jiri-AT-resnulli.us>, Moshe Shemesh <moshe-AT-nvidia.com>, Or Har-Toov <ohartoov-AT-nvidia.com>, Shay Drori <shayd-AT-nvidia.com>, Parav Pandit <parav-AT-nvidia.com>, Daniel Jurgens <danielj-AT-nvidia.com>, Kees Cook <kees-AT-kernel.org>, Cosmin Ratiu <cratiu-AT-nvidia.com>, Carolina Jubran <cjubran-AT-nvidia.com>, <netdev-AT-vger.kernel.org>, <linux-rdma-AT-vger.kernel.org>, <linux-kernel-AT-vger.kernel.org>, Gal Pressman <gal-AT-nvidia.com>
Archive-link:  Article

Hi,

See detailed feature description by Moshe below.

Regards,
Tariq

A satellite PF is a new SmartNIC configuration that adds another
physical function on the DPU that is not an eswitch manager and not a
page manager. The satellite PF can have its own SFs and can be passed
through to a VM on the DPU, providing an isolated function for users who
should not have access to the privileged ECPF. The ECPF handles the
satellite PF and the host PF in a similar way, using the same management
framework.

This series adds support for satellite PFs (SPFs) in the mlx5 eswitch.
SPFs are discovered through the v1 response layout of the
query_esw_functions command, introduced in the previous infrastructure
preparation series.

The first four patches discover satellite PFs, allocate eswitch vports
for them and their SFs, and extend the SF hardware table to manage SPF
SF entries.

The next five patches expose PF numbers from firmware, map SF
controllers to their pfnum, register devlink ports with proper
attributes, and register SF resource on satellite PF ports.

The final four patches add devlink port state management, FDB peer miss
rules, dedicated page accounting, and SF resource registration for
satellite PF vports.

This series builds on the eswitch infrastructure preparation series
previously submitted.


Moshe Shemesh (11):
  net/mlx5: Add satellite PF vport support
  net/mlx5: Introduce generic helper for PF SFs info
  net/mlx5: Initialize host PF host number earlier
  net/mlx5: Initialize satellite PF SF vports
  net/mlx5: Support SPF SFs in SF hardware table
  net/mlx5: Expose PF number from query_esw_functions
  net/mlx5: Map SF controller to pfnum for satellite PFs
  net/mlx5: Register devlink ports for satellite PFs
  net/mlx5: Support state get/set for satellite PF ports
  net/mlx5: Add FDB peer miss rules for satellite PFs
  net/mlx5: Add SPF function type for page management

Or Har-Toov (1):
  net/mlx5: Register SF resource on satellite PF ports

 .../net/ethernet/mellanox/mlx5/core/debugfs.c |   3 +
 .../net/ethernet/mellanox/mlx5/core/ecpf.c    |   5 +
 .../mellanox/mlx5/core/esw/adj_vport.c        |   6 +-
 .../mellanox/mlx5/core/esw/devlink_port.c     |  59 ++-
 .../net/ethernet/mellanox/mlx5/core/eswitch.c | 398 ++++++++++++++++--
 .../net/ethernet/mellanox/mlx5/core/eswitch.h |  43 +-
 .../mellanox/mlx5/core/eswitch_offloads.c     |  86 ++--
 .../ethernet/mellanox/mlx5/core/pagealloc.c   |   3 +
 .../ethernet/mellanox/mlx5/core/sf/devlink.c  |  14 +-
 .../ethernet/mellanox/mlx5/core/sf/hw_table.c |  89 +++-
 include/linux/mlx5/driver.h                   |   1 +
 11 files changed, 595 insertions(+), 112 deletions(-)


base-commit: 33fb2e2bc7a43c79f02dad79c39ff04ae6dc224f
-- 
2.44.0




Copyright © 2026, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds