public inbox for dev@dpdk.org
 help / color / mirror / Atom feed
From: Dariusz Sosnowski <dsosnowski@nvidia.com>
To: Viacheslav Ovsiienko <viacheslavo@nvidia.com>,
	Bing Zhao <bingz@nvidia.com>, Ori Kam <orika@nvidia.com>,
	Suanming Mou <suanmingm@nvidia.com>,
	Matan Azrad <matan@nvidia.com>
Cc: <dev@dpdk.org>, Raslan Darawsheh <rasland@nvidia.com>, <stable@dpdk.org>
Subject: [PATCH] net/mlx5: fix skipping PF representors
Date: Tue, 7 Apr 2026 12:31:30 +0200	[thread overview]
Message-ID: <20260407103130.142440-1-dsosnowski@nvidia.com> (raw)

Offending patch changed logic of matching IB ports to requested
representors in mlx5 driver.
Each found IB port was matched against all requested representors.
Whenever:

- requested representor was VF or SF
- PF was not ignored
- IB port was physical port
- physical port index matched requested PF index

the physical port representor was probed.
If any of the above is false, mlx5 driver should have continue testing
other requested PF representors.
In the offending patch, the representor matching loop was stopped.
As a result, if mlx5 device with MPESW enabled was probed with the
following devargs:

	-a 08:00.0,dv_flow_en=2,representor=pf[0-1]vf[0,1]

Only 5 ports were probed (physical port 0 and all VF representors),
instead of 6 ports (physical port 1 is missing).

This patch fixes that by continuing representor matching loop
on physical port to PF index mismatch as described above.

Fixes: 2f7cdd821b1b ("net/mlx5: fix probing to allow BlueField Socket Direct")
Cc: stable@dpdk.org

Signed-off-by: Dariusz Sosnowski <dsosnowski@nvidia.com>
Acked-by: Bing Zhao <bingz@nvidia.com>
---
 drivers/net/mlx5/linux/mlx5_os.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/mlx5/linux/mlx5_os.c b/drivers/net/mlx5/linux/mlx5_os.c
index a717191002..10b947116c 100644
--- a/drivers/net/mlx5/linux/mlx5_os.c
+++ b/drivers/net/mlx5/linux/mlx5_os.c
@@ -1186,7 +1186,7 @@ representor_match_port(const struct mlx5_dev_spawn_data *spawn,
 
 		/* Uplink ports should not be matched against representor_ports. */
 		if (spawn->info.name_type == MLX5_PHYS_PORT_NAME_TYPE_UPLINK)
-			return false;
+			continue;
 
 		for (uint16_t f = 0; f < eth_da->nb_representor_ports; ++f) {
 			uint16_t port_num = eth_da->representor_ports[f];
-- 
2.47.3


             reply	other threads:[~2026-04-07 10:32 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-07 10:31 Dariusz Sosnowski [this message]
2026-04-09  8:40 ` [PATCH] net/mlx5: fix skipping PF representors Raslan Darawsheh

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20260407103130.142440-1-dsosnowski@nvidia.com \
    --to=dsosnowski@nvidia.com \
    --cc=bingz@nvidia.com \
    --cc=dev@dpdk.org \
    --cc=matan@nvidia.com \
    --cc=orika@nvidia.com \
    --cc=rasland@nvidia.com \
    --cc=stable@dpdk.org \
    --cc=suanmingm@nvidia.com \
    --cc=viacheslavo@nvidia.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox