Commit ff02be05 authored by Gautam R A's avatar Gautam R A Committed by Jakub Kicinski
Browse files

bnxt_en: Fix null pointer dereference in bnxt_bs_trace_check_wrap()



With older FW, we may get the ASYNC_EVENT_CMPL_EVENT_ID_DBG_BUF_PRODUCER
for FW trace data type that has not been initialized.  This will result
in a crash in bnxt_bs_trace_type_wrap().  Add a guard to check for a
valid magic_byte pointer before proceeding.

Fixes: 84fcd944 ("bnxt_en: Manage the FW trace context memory")
Reviewed-by: default avatarSomnath Kotur <somnath.kotur@broadcom.com>
Reviewed-by: default avatarShruti Parab <shruti.parab@broadcom.com>
Signed-off-by: default avatarGautam R A <gautam-r.a@broadcom.com>
Signed-off-by: default avatarMichael Chan <michael.chan@broadcom.com>
Link: https://patch.msgid.link/20251104005700.542174-4-michael.chan@broadcom.com


Signed-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent deb8eb39
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -2149,7 +2149,7 @@ struct bnxt_bs_trace_info {
static inline void bnxt_bs_trace_check_wrap(struct bnxt_bs_trace_info *bs_trace,
					    u32 offset)
{
	if (!bs_trace->wrapped &&
	if (!bs_trace->wrapped && bs_trace->magic_byte &&
	    *bs_trace->magic_byte != BNXT_TRACE_BUF_MAGIC_BYTE)
		bs_trace->wrapped = 1;
	bs_trace->last_offset = offset;