patch 'net/bnxt: fix Rx timestamping for non-PTP packets' has been queued to stable release 24.11.7
luca.boccassi at gmail.com
luca.boccassi at gmail.com
Thu Jun 11 15:21:04 CEST 2026
Hi,
FYI, your patch has been queued to stable release 24.11.7
Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 06/13/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/8975a538fb4ad6577c2ea074b14a329215baa62c
Thanks.
Luca Boccassi
---
>From 8975a538fb4ad6577c2ea074b14a329215baa62c Mon Sep 17 00:00:00 2001
From: Chenna Arnoori <chenna.arnoori at broadcom.com>
Date: Tue, 5 May 2026 11:53:12 -0400
Subject: [PATCH] net/bnxt: fix Rx timestamping for non-PTP packets
[ upstream commit 593a6de02f1a155f547fd15c6a587fa91e6cedec ]
When the adapter is configured to timestamp all incoming packets,
timestamps were silently missing for non-PTP traffic (such as IPv6
packets). A previous update incorrectly restricted the timestamp
processing to only recognised PTP packets by changing an OR condition
to an AND condition. This is corrected so that timestamps are properly
extracted for all received packets when promiscuous timestamping is
enabled.
A comment is added to clarify the two conditions under which the
hardware timestamp is extracted from the completion record:
1. The packet is explicitly classified as a PTP packet (with or
without timestamp).
2. Promiscuous timestamping is enabled (ptp_all_rx_tstamp), which
instructs the hardware to timestamp all packets, including
non-PTP traffic (e.g., IPv6).
Fixes: feb485b62cd4 ("net/bnxt: fix PTP timestamp flags in scalar Rx")
Signed-off-by: Chenna Arnoori <chenna.arnoori at broadcom.com>
Signed-off-by: Mohammad Shuab Siddique <mohammad-shuab.siddique at broadcom.com>
---
.mailmap | 1 +
drivers/net/bnxt/bnxt_rxr.c | 11 +++++++++--
2 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/.mailmap b/.mailmap
index 4a0b27a594..2454099e0e 100644
--- a/.mailmap
+++ b/.mailmap
@@ -254,6 +254,7 @@ Cheng Peng <cheng.peng5 at zte.com.cn>
Chengwen Feng <fengchengwen at huawei.com>
Chenmin Sun <chenmin.sun at intel.com>
Chenming Chang <ccm at ccm.ink>
+Chenna Arnoori <chenna.arnoori at broadcom.com>
Chenxingyu Wang <wangchenxingyu at huawei.com>
Chenxu Di <chenxux.di at intel.com>
Chenyu Huang <chenyux.huang at intel.com>
diff --git a/drivers/net/bnxt/bnxt_rxr.c b/drivers/net/bnxt/bnxt_rxr.c
index 818f274aac..b15b79db5e 100644
--- a/drivers/net/bnxt/bnxt_rxr.c
+++ b/drivers/net/bnxt/bnxt_rxr.c
@@ -1202,12 +1202,19 @@ static int bnxt_rx_pkt(struct rte_mbuf **rx_pkt,
mbuf->data_len = mbuf->pkt_len;
mbuf->port = rxq->port_id;
- if (unlikely((((rte_le_to_cpu_16(rxcmp->flags_type) &
+ /* Extract the hardware timestamp from the completion record if:
+ * 1. The packet is explicitly classified as a PTP packet (with or
+ * without timestamp), OR
+ * 2. Promiscuous timestamping is enabled (ptp_all_rx_tstamp), which
+ * instructs the hardware to timestamp all packets, including
+ * non-PTP traffic (e.g., IPv6).
+ */
+ if (unlikely(((rte_le_to_cpu_16(rxcmp->flags_type) &
RX_PKT_CMPL_FLAGS_MASK) ==
RX_PKT_CMPL_FLAGS_ITYPE_PTP_W_TIMESTAMP) ||
((rte_le_to_cpu_16(rxcmp->flags_type) &
RX_PKT_CMPL_FLAGS_MASK) ==
- RX_PKT_CMPL_FLAGS_ITYPE_PTP_WO_TIMESTAMP)) &&
+ RX_PKT_CMPL_FLAGS_ITYPE_PTP_WO_TIMESTAMP) ||
bp->ptp_all_rx_tstamp)) {
if (BNXT_CHIP_P5_P7(bp))
bnxt_get_rx_ts_p5_p7(rxq->bp, rxcmp1->reorder);
--
2.47.3
---
Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- - 2026-06-11 14:20:05.858797067 +0100
+++ 0115-net-bnxt-fix-Rx-timestamping-for-non-PTP-packets.patch 2026-06-11 14:20:01.386750162 +0100
@@ -1 +1 @@
-From 593a6de02f1a155f547fd15c6a587fa91e6cedec Mon Sep 17 00:00:00 2001
+From 8975a538fb4ad6577c2ea074b14a329215baa62c Mon Sep 17 00:00:00 2001
@@ -5,0 +6,2 @@
+[ upstream commit 593a6de02f1a155f547fd15c6a587fa91e6cedec ]
+
@@ -23 +24,0 @@
-Cc: stable at dpdk.org
@@ -29,2 +30,2 @@
- drivers/net/bnxt/bnxt_rxr.c | 14 +++++++++++---
- 2 files changed, 12 insertions(+), 3 deletions(-)
+ drivers/net/bnxt/bnxt_rxr.c | 11 +++++++++--
+ 2 files changed, 10 insertions(+), 2 deletions(-)
@@ -33 +34 @@
-index f9571228e1..6796a30860 100644
+index 4a0b27a594..2454099e0e 100644
@@ -36 +37 @@
-@@ -269,6 +269,7 @@ Chenglian Sun <sunchenglian at loongson.cn>
+@@ -254,6 +254,7 @@ Cheng Peng <cheng.peng5 at zte.com.cn>
@@ -45 +46 @@
-index 046276f931..ee49d85d43 100644
+index 818f274aac..b15b79db5e 100644
@@ -48 +49 @@
-@@ -1203,13 +1203,21 @@ static int bnxt_rx_pkt(struct rte_mbuf **rx_pkt,
+@@ -1202,12 +1202,19 @@ static int bnxt_rx_pkt(struct rte_mbuf **rx_pkt,
@@ -66 +66,0 @@
-- bp->ptp_all_rx_tstamp) && bp->ieee_1588 &&
@@ -68,5 +68,3 @@
-+ bp->ptp_all_rx_tstamp) &&
-+ bp->ieee_1588 &&
- bp->ptp_cfg) {
- mbuf->ol_flags |= RTE_MBUF_F_RX_IEEE1588_PTP |
- RTE_MBUF_F_RX_IEEE1588_TMST;
+ bp->ptp_all_rx_tstamp)) {
+ if (BNXT_CHIP_P5_P7(bp))
+ bnxt_get_rx_ts_p5_p7(rxq->bp, rxcmp1->reorder);
More information about the stable
mailing list