[PATCH net-next] net: octeon: Fix dma_unmap_single() size

From: Thomas Fourier

Date: Thu Oct 15 2026 - 09:33:11 EST


re.s.addr is mapped in octeon_mgmt_rx_fill_ring() with size re.s.len
set to netdev->mtu + OCTEON_MGMT_RX_HEADROOM + 8 + NET_IP_ALIGN. It is
unmapped in octeon_mgmt_dequeue_rx_buffer() with
ETH_FRAME_LEN + OCTEON_MGMT_RX_HEADROOM.

Change unmap size to re.s.len.

Fixes: d6aa60a10b2f ("NET: Add Ethernet driver for Octeon MGMT devices.")
Signed-off-by: Thomas Fourier <fourier.thomas@xxxxxxxxx>
---
drivers/net/ethernet/cavium/octeon/octeon_mgmt.c | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)

diff --git a/drivers/net/ethernet/cavium/octeon/octeon_mgmt.c b/drivers/net/ethernet/cavium/octeon/octeon_mgmt.c
index c190fc6538d4..92050716f103 100644
--- a/drivers/net/ethernet/cavium/octeon/octeon_mgmt.c
+++ b/drivers/net/ethernet/cavium/octeon/octeon_mgmt.c
@@ -380,9 +380,7 @@ static u64 octeon_mgmt_dequeue_rx_buffer(struct octeon_mgmt *p,
p->rx_current_fill--;
*pskb = __skb_dequeue(&p->rx_list);

- dma_unmap_single(p->dev, re.s.addr,
- ETH_FRAME_LEN + OCTEON_MGMT_RX_HEADROOM,
- DMA_FROM_DEVICE);
+ dma_unmap_single(p->dev, re.s.addr, re.s.len, DMA_FROM_DEVICE);

return re.d64;
}
--
2.53.0