patch 'net/mlx5: fix multicast' has been queued to stable release 24.11.4

Kevin Traynor ktraynor at redhat.com
Fri Oct 31 15:33:28 CET 2025


Hi,

FYI, your patch has been queued to stable release 24.11.4

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 11/05/25. So please
shout if anyone has objections.

Also note that after the patch there's a diff of the upstream commit vs the
patch applied to the branch. This will indicate if there was any rebasing
needed to apply to the stable branch. If there were code changes for rebasing
(ie: not only metadata diffs), please double check that the rebase was
correctly done.

Queued patches are on a temporary branch at:
https://github.com/kevintraynor/dpdk-stable

This queued commit can be viewed at:
https://github.com/kevintraynor/dpdk-stable/commit/ddcaa1671f84a3662842df7bb8763fe8ffa6081b

Thanks.

Kevin

---
>From ddcaa1671f84a3662842df7bb8763fe8ffa6081b Mon Sep 17 00:00:00 2001
From: Gavin Li <gavinl at nvidia.com>
Date: Fri, 29 Aug 2025 12:08:30 +0300
Subject: [PATCH] net/mlx5: fix multicast

[ upstream commit 8c06434cd9e44ef8a4db2eb7e3300c7791c4e7b4 ]

Device multicast MAC addresses are managed using the mac_addr_add and
mac_addr_remove APIs.

In the mlx5_dev_spawn function, devices such as PF, VFs, and SFs obtain
the MAC addresses configured in netdev via netlink and store them in the
PMD device data, which also includes multicast MAC addresses. Default
rules are created for each MAC address to filter traffic accordingly.

Previously, multicast MAC address flows were mistakenly disabled, which
caused mac_addr_add to stop functioning for multicast MAC addresses,
resulting in missed multicast traffic.

To address this, default rules for multicast MAC addresses created by
PMD should now be set up within mlx5_traffic_enable to properly update
and manage multicast MAC address rules.

Fixes: 2d0665a7f771 ("net/mlx5: align PF and VF/SF MAC address handling")

Signed-off-by: Gavin Li <gavinl at nvidia.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo at nvidia.com>
---
 drivers/net/mlx5/mlx5_trigger.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/net/mlx5/mlx5_trigger.c b/drivers/net/mlx5/mlx5_trigger.c
index 485984f9b0..e2a94ca14c 100644
--- a/drivers/net/mlx5/mlx5_trigger.c
+++ b/drivers/net/mlx5/mlx5_trigger.c
@@ -1715,5 +1715,8 @@ mlx5_traffic_enable(struct rte_eth_dev *dev)
 		struct rte_ether_addr *mac = &dev->data->mac_addrs[i];
 
-		if (!memcmp(mac, &cmp, sizeof(*mac)) || rte_is_multicast_ether_addr(mac))
+		/* Add flows for unicast and multicast mac addresses added by API. */
+		if (!memcmp(mac, &cmp, sizeof(*mac)) ||
+		    !BITFIELD_ISSET(priv->mac_own, i) ||
+		    (dev->data->all_multicast && rte_is_multicast_ether_addr(mac)))
 			continue;
 		memcpy(&unicast.hdr.dst_addr.addr_bytes,
-- 
2.51.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2025-10-31 13:53:54.854257811 +0000
+++ 0086-net-mlx5-fix-multicast.patch	2025-10-31 13:53:52.219523939 +0000
@@ -1 +1 @@
-From 8c06434cd9e44ef8a4db2eb7e3300c7791c4e7b4 Mon Sep 17 00:00:00 2001
+From ddcaa1671f84a3662842df7bb8763fe8ffa6081b Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 8c06434cd9e44ef8a4db2eb7e3300c7791c4e7b4 ]
+
@@ -23 +24,0 @@
-Cc: stable at dpdk.org
@@ -32 +33 @@
-index b104ca9f52..916ac03c16 100644
+index 485984f9b0..e2a94ca14c 100644
@@ -35 +36 @@
-@@ -1836,5 +1836,8 @@ mlx5_traffic_enable(struct rte_eth_dev *dev)
+@@ -1715,5 +1715,8 @@ mlx5_traffic_enable(struct rte_eth_dev *dev)



More information about the stable mailing list