public inbox for dev@dpdk.org
 help / color / mirror / Atom feed
* [PATCH] net/bnxt: fix l2_db_multi_page_size_kb position in func_qcfg output
@ 2026-03-24 20:48 Mohammad Shuab Siddique
  2026-03-24 21:02 ` Kishore Padmanabha
  0 siblings, 1 reply; 3+ messages in thread
From: Mohammad Shuab Siddique @ 2026-03-24 20:48 UTC (permalink / raw)
  To: dev; +Cc: kishore.padmanabha, Mohammad Shuab Siddique, stable

From: Mohammad Shuab Siddique <mohammad-shuab.siddique@broadcom.com>

The field was placed at incorrect offset in hwrm_func_qcfg_output causing
legacy_l2_db_size_kb to read svif_info instead, producing a doorbell offset
exceeding BAR2 and resulting in SIGSEGV on BCM57608.

Move l2_db_multi_page_size_kb after mirror_vnic_id to match firmware
response layout.

Fixes: 04102f2ffc8c ("net/bnxt: update HWRM API to version 1.10.1.6")
Fixes: 7a1f9c782b50 ("net/bnxt: add multi-doorbell support")

Cc: stable@dpdk.org

Signed-off-by: Mohammad Shuab Siddique <mohammad-shuab.siddique@broadcom.com>
---
 drivers/net/bnxt/hsi_struct_def_dpdk.h | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/drivers/net/bnxt/hsi_struct_def_dpdk.h b/drivers/net/bnxt/hsi_struct_def_dpdk.h
index 26d5e9ca78..1a8874f5b6 100644
--- a/drivers/net/bnxt/hsi_struct_def_dpdk.h
+++ b/drivers/net/bnxt/hsi_struct_def_dpdk.h
@@ -16277,12 +16277,6 @@ struct __rte_packed_begin hwrm_func_qcfg_output {
 	 * of the doorbell BAR between L2 and RoCE is required.
 	 */
 	uint16_t	l2_doorbell_bar_size_kb;
-	/*
-	 * The size of the doorbell BAR in KBytes reserved for multi-L2
-	 * doorbell pages. This area is a subset of l2_doorbell_bar_size_kb,
-	 * which is size of the total doorbell BAR space reserved for L2.
-	 */
-	uint16_t	l2_db_multi_page_size_kb;
 	/*
 	 * A bitmask indicating the active endpoints. Each bit represents a
 	 * specific endpoint, with bit 0 indicating EP 0 and bit 3 indicating
@@ -16605,6 +16599,12 @@ struct __rte_packed_begin hwrm_func_qcfg_output {
 	 * or a raw QP.
 	 */
 	uint16_t	mirror_vnic_id;
+	/*
+	 * The size of the doorbell BAR in KBytes reserved for multi-L2
+	 * doorbell pages. This area is a subset of l2_doorbell_bar_size_kb,
+	 * which is size of the total doorbell BAR space reserved for L2.
+	 */
+	uint16_t	l2_db_multi_page_size_kb;
 	uint8_t	unused_7[7];
 	/*
 	 * This field is used in Output records to indicate that the output
-- 
2.47.3


^ permalink raw reply related	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-03-25 14:17 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-03-24 20:48 [PATCH] net/bnxt: fix l2_db_multi_page_size_kb position in func_qcfg output Mohammad Shuab Siddique
2026-03-24 21:02 ` Kishore Padmanabha
2026-03-25 14:17   ` Thomas Monjalon

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox