]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
ethernet: atl1: Add missing DMA mapping error checks and count errors
authorThomas Fourier <fourier.thomas@gmail.com>
Wed, 25 Jun 2025 14:16:24 +0000 (16:16 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 17 Jul 2025 16:27:57 +0000 (18:27 +0200)
commita9c058b0ab50c21d19d9765d8139d3bdff37e4d5
tree6130e2fe90b9516d87637a8d122c5ec3f2d4dc3a
parent4ea0b1c30257534b684568bc8bccc5ac455a991e
ethernet: atl1: Add missing DMA mapping error checks and count errors

[ Upstream commit d72411d20905180cdc452c553be17481b24463d2 ]

The `dma_map_XXX()` functions can fail and must be checked using
`dma_mapping_error()`.  This patch adds proper error handling for all
DMA mapping calls.

In `atl1_alloc_rx_buffers()`, if DMA mapping fails, the buffer is
deallocated and marked accordingly.

In `atl1_tx_map()`, previously mapped buffers are unmapped and the
packet is dropped on failure.

If `atl1_xmit_frame()` drops the packet, increment the tx_error counter.

Fixes: f3cc28c79760 ("Add Attansic L1 ethernet driver.")
Signed-off-by: Thomas Fourier <fourier.thomas@gmail.com>
Link: https://patch.msgid.link/20250625141629.114984-2-fourier.thomas@gmail.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/net/ethernet/atheros/atlx/atl1.c