patch 'net/mlx5: fix VLAN strip info for CQE compression' has been queued to stable release 24.11.5
luca.boccassi at gmail.com
luca.boccassi at gmail.com
Thu Mar 26 13:57:45 CET 2026
Hi,
FYI, your patch has been queued to stable release 24.11.5
Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 03/28/26. 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/bluca/dpdk-stable
This queued commit can be viewed at:
https://github.com/bluca/dpdk-stable/commit/8586dd03f39df95c1534e95f4bc68b87a16bc0b9
Thanks.
Luca Boccassi
---
>From 8586dd03f39df95c1534e95f4bc68b87a16bc0b9 Mon Sep 17 00:00:00 2001
From: Dariusz Sosnowski <dsosnowski at nvidia.com>
Date: Fri, 20 Mar 2026 17:00:01 +0100
Subject: [PATCH] net/mlx5: fix VLAN strip info for CQE compression
[ upstream commit 5654f38eba85dc180384d5b2caf621b224da51eb ]
When L3/L4 mini CQE format is used with CQE compression
(rxq_cqe_comp_en set to 4 in lower 3 bits),
each mini CQE reports packet header info for relevant packet.
One bit in that header info is dedicated to CVLAN info,
used to determine whether CVLAN is present in the received packet.
This info is used to determine VLAN stripping info
when relevant offload is enabled.
Before this patch, users might have seen incorrectly set/unset
RTE_MBUF_F_RX_VLAN and RTE_MBUF_F_RX_VLAN_STRIPPED flags because:
- Struct for mlx5 mini CQE incorrectly defined the location
of packet header info byte - it was swapped with neighboring
reserved byte.
- CVLAN bit was checked incorrectly because of cast to uint16_t
and big endian change. It should be checked as uint8_t.
This patch addresses the above.
Fixes: 54c2d46b160f ("net/mlx5: support flow tag and packet header miniCQEs")
Signed-off-by: Dariusz Sosnowski <dsosnowski at nvidia.com>
Acked-by: Viacheslav Ovsiienko <viacheslavo at nvidia.com>
---
drivers/common/mlx5/mlx5_prm.h | 2 +-
drivers/net/mlx5/mlx5_rx.c | 3 +--
2 files changed, 2 insertions(+), 3 deletions(-)
diff --git a/drivers/common/mlx5/mlx5_prm.h b/drivers/common/mlx5/mlx5_prm.h
index 43b48a96de..f4cd7330be 100644
--- a/drivers/common/mlx5/mlx5_prm.h
+++ b/drivers/common/mlx5/mlx5_prm.h
@@ -5443,8 +5443,8 @@ struct mlx5_mini_cqe8 {
uint16_t checksum;
uint16_t flow_tag_high;
struct {
- uint8_t reserved;
uint8_t hdr_type;
+ uint8_t reserved;
};
};
uint16_t stride_idx;
diff --git a/drivers/net/mlx5/mlx5_rx.c b/drivers/net/mlx5/mlx5_rx.c
index c5fdf25a38..b3e9392a97 100644
--- a/drivers/net/mlx5/mlx5_rx.c
+++ b/drivers/net/mlx5/mlx5_rx.c
@@ -999,8 +999,7 @@ rxq_cq_to_mbuf(struct mlx5_rxq_data *rxq, struct rte_mbuf *pkt,
vlan_strip = cqe->hdr_type_etc &
RTE_BE16(MLX5_CQE_VLAN_STRIPPED);
else
- vlan_strip = mcqe->hdr_type &
- RTE_BE16(MLX5_CQE_VLAN_STRIPPED);
+ vlan_strip = mcqe->hdr_type & MLX5_CQE_VLAN_STRIPPED;
if (vlan_strip) {
pkt->ol_flags |= RTE_MBUF_F_RX_VLAN | RTE_MBUF_F_RX_VLAN_STRIPPED;
pkt->vlan_tci = rte_be_to_cpu_16(cqe->vlan_info);
--
2.47.3
---
Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- - 2026-03-26 12:56:33.902089404 +0000
+++ 0011-net-mlx5-fix-VLAN-strip-info-for-CQE-compression.patch 2026-03-26 12:56:33.433543666 +0000
@@ -1 +1 @@
-From 5654f38eba85dc180384d5b2caf621b224da51eb Mon Sep 17 00:00:00 2001
+From 8586dd03f39df95c1534e95f4bc68b87a16bc0b9 Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 5654f38eba85dc180384d5b2caf621b224da51eb ]
+
@@ -26 +27,0 @@
-Cc: stable at dpdk.org
@@ -36 +37 @@
-index ba33336e58..11b14e4f9d 100644
+index 43b48a96de..f4cd7330be 100644
@@ -39 +40 @@
-@@ -5516,8 +5516,8 @@ struct mlx5_mini_cqe8 {
+@@ -5443,8 +5443,8 @@ struct mlx5_mini_cqe8 {
@@ -50 +51 @@
-index bc0470e6af..da871fd18a 100644
+index c5fdf25a38..b3e9392a97 100644
@@ -53 +54 @@
-@@ -1000,8 +1000,7 @@ rxq_cq_to_mbuf(struct mlx5_rxq_data *rxq, struct rte_mbuf *pkt,
+@@ -999,8 +999,7 @@ rxq_cq_to_mbuf(struct mlx5_rxq_data *rxq, struct rte_mbuf *pkt,
More information about the stable
mailing list