summaryrefslogtreecommitdiff
path: root/scripts/const_structs.checkpatch
diff options
context:
space:
mode:
authorJoe Damato <joe@dama.to>2026-08-25 17:02:33 -0700
committerPaolo Abeni <pabeni@redhat.com>2026-08-27 11:27:31 +0200
commit00eeab0c644a881a1dc86fbffb7e6047a6ce8ecd (patch)
treef90b72a2ba13b9159f812152b048f60ba1d33563 /scripts/const_structs.checkpatch
parentcec261b0b4c5c0b044165303198d10ffcdf3414c (diff)
downloadlinux-00eeab0c644a881a1dc86fbffb7e6047a6ce8ecd.tar.gz
linux-00eeab0c644a881a1dc86fbffb7e6047a6ce8ecd.zip
bnxt_en: Write doorbell when linearizing skb fails
When the driver is handed a burst of packets, the doorbell is deferred until the end. If the last packet has a huge number of frags, but fails to linearize, the doorbell will not be written adding latency on TX for any packets in the ring and holding their DMA mappings until the next TX. Note that the queue is not stopped, so this issue would delay pending BDs until the next TX. This issue was discovered by Sashiko and reading the code verifies that, while unlikely, it is possible. Fix this by jumping to tx_free, which replicates the same pre-existing logic but also writes the doorbell. Fixes: b91e82129400 ("bnxt_en: Linearize TX SKB if the fragments exceed the max") Cc: stable@vger.kernel.org Signed-off-by: Joe Damato <joe@dama.to> Reviewed-by: Michael Chan <michael.chan@broadcom.com> Reviewed-by: Andy Gospodarek <gospo@broadcom.com> Link: https://patch.msgid.link/20260826000234.2031564-1-joe@dama.to Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Diffstat (limited to 'scripts/const_structs.checkpatch')
0 files changed, 0 insertions, 0 deletions