]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
net: lan743x: Allocate rings outside ZONE_DMA
authorThangaraj Samynathan <thangaraj.s@microchip.com>
Tue, 15 Apr 2025 04:45:09 +0000 (10:15 +0530)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 18 Dec 2025 12:55:22 +0000 (13:55 +0100)
commit 8a8f3f4991761a70834fe6719d09e9fd338a766e upstream.

The driver allocates ring elements using GFP_DMA flags. There is
no dependency from LAN743x hardware on memory allocation should be
in DMA_ZONE. Hence modifying the flags to use only GFP_ATOMIC. This
is consistent with other callers of lan743x_rx_init_ring_element().

Reported-by: Zhang, Liyin(CN) <Liyin.Zhang.CN@windriver.com>
Signed-off-by: Thangaraj Samynathan <thangaraj.s@microchip.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/20250415044509.6695-1-thangaraj.s@microchip.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/net/ethernet/microchip/lan743x_main.c

index 9836fbbea0cc2f69449a22979ae6e1f216757e13..8c4c28a1d657594cd738ac167626c3beb2d9e0aa 100644 (file)
@@ -2494,8 +2494,7 @@ static int lan743x_rx_process_buffer(struct lan743x_rx *rx)
 
        /* save existing skb, allocate new skb and map to dma */
        skb = buffer_info->skb;
-       if (lan743x_rx_init_ring_element(rx, rx->last_head,
-                                        GFP_ATOMIC | GFP_DMA)) {
+       if (lan743x_rx_init_ring_element(rx, rx->last_head, GFP_ATOMIC)) {
                /* failed to allocate next skb.
                 * Memory is very low.
                 * Drop this packet and reuse buffer.