[PATCH 24.11] net/mlx5: fix probing to allow BlueField Socket Direct

Luca Boccassi luca.boccassi at gmail.com
Fri Mar 20 18:11:18 CET 2026


On Fri, 20 Mar 2026 at 13:09, Dariusz Sosnowski <dsosnowski at nvidia.com> wrote:
>
> [ upstream commit 2f7cdd821b1b4954f18faad0e8b6d9ab41ca3f23 ]
>
> BlueField DPUs with Socket Direct (SD) can be connected to 2 different
> CPUs on the host system.
> Each host CPU sees 2 PFs.
> Each PF is connected to one of the physical ports.
>
> On BlueField DPU ARM Linux netdevs map to PFs/ports as follows:
>
> - p0 and p1 to physical ports 0 and 1 respectively,
> - pf0hpf and pf2hpf to CPU0 pf0 and CPU1 pf0 respectively,
> - pf1hpf and pf3hpf to CPU0 pf1 and CPU1 pf1 respectively.
>
> There are several possible ways to use such a setup:
>
> 1. Single E-Switch (embedded switch) per each CPU PF to
>    physical port connection.
> 2. Shared E-Switch for related CPU PFs:
>     - For example, both pf0hpf and pf2hpf are in the same E-Switch.
> 3. Multiport E-Switch (MPESW).
>
> Existing probing logic in mlx5 PMD did not support case (2).
> In this case there is one physical port (uplink in mlx5 naming)
> and 2 host PFs.
> On such a setup mlx5 generated port names with the following syntax:
>
>     03:00.0_representor_vfX
>
> Because setup was not recognized as neither bond nor MPESW.
> Since BlueField with Socket Direct would have 2 host PFs,
> such probing logic caused DPDK port name collisions
> on the attempt to probe 2 host PFs at the same time.
>
> This patch addresses that by changing probing and naming logic
> to be more generic. This is achieved through:
>
> - Adding logic for calculation of number of uplinks and
>   number of host PFs available on the system.
> - Change port name generation logic to be based on these numbers
>   instead of specific setup type.
> - Change representor matching logic during probing
>   to respect all parameters passed in devargs.
>   Specifically, controller index, PF index and VF indexes are used.
>
> Fixes: 11c73de9ef63 ("net/mlx5: probe multi-port E-Switch device")
> Cc: stable at dpdk.org
>
> Signed-off-by: Dariusz Sosnowski <dsosnowski at nvidia.com>
> Acked-by: Bing Zhao <bingz at nvidia.com>

Applied, thanks


More information about the stable mailing list