[PATCH] net/mlx5: fix cross GVMI metadata match for E-Switch setup

Gregory Etelson getelson at nvidia.com
Thu Nov 13 08:17:45 CET 2025


The metadata flow item did not check for cross GVMI support.

Fixes: a78425ba3793 ("net/mlx5: support flow metadata exchange between E-Switch and VM")

Signed-off-by: Gregory Etelson <getelson at nvidia.com>
Acked-by: Bing Zhao <bingz at nvidia.com>
---
 drivers/net/mlx5/mlx5_flow.h | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/net/mlx5/mlx5_flow.h b/drivers/net/mlx5/mlx5_flow.h
index e8b298dd1d..2f070d9d97 100644
--- a/drivers/net/mlx5/mlx5_flow.h
+++ b/drivers/net/mlx5/mlx5_flow.h
@@ -1807,7 +1807,8 @@ flow_hw_get_reg_id_by_domain(struct rte_eth_dev *dev,
 	switch (type) {
 	case RTE_FLOW_ITEM_TYPE_META:
 		if (sh->config.dv_esw_en &&
-		    sh->config.dv_xmeta_en == MLX5_XMETA_MODE_META32_HWS) {
+		    (sh->config.dv_xmeta_en == MLX5_XMETA_MODE_META32_HWS ||
+		     mlx5_esw_metadata_passing_enabled(sh))) {
 			return REG_C_1;
 		}
 		if ((mlx5_vport_rx_metadata_passing_enabled(sh) &&
-- 
2.51.0



More information about the dev mailing list