Re: [PATCH net 1/2] bnxt_en: Mask the bd_cnt field in the TX BD properly

From
Jakub Kicinski <kuba@kernel.org>
Date
2025-03-24 21:12:37
Reply to
Michael Chan, 2025-03-21
On Fri, 21 Mar 2025 14:16:38 -0700 Michael Chan wrote:
The bd_cnt field in the TX BD specifies the total number of BDs for
the TX packet.  The bd_cnt field has 5 bits and the maximum number
supported is 32 with the value 0.

CONFIG_MAX_SKB_FRAGS can be modified and the total number of SKB
fragments can approach or exceed the maximum supported by the chip.
Add a macro to properly mask the bd_cnt field so that the value 32
will be properly masked and set to 0 in the bd_cnd field.

Without this patch, the out-of-range bd_cnt value will corrupt the
TX BD and may cause TX timeout.

The next patch will check for values exceeding 32.
Could you clarify how this patch improves things, exactly?
Patch 2/2 looks like the real fix, silently truncating 
the number of frags does not seem to make anything correct..
-- 
pw-bot: cr
Thread (12 messages) 12 messages, 5 authors, last reply 2025-05-05
Keyboard shortcuts
hback out one level
jnext message in thread / next series-diff position
kprevious message in thread / previous series-diff position
ldrill in
Escclose help / fold thread tree
?toggle this help