[PATCH net-next v2] net: ethernet: microchip: lan743x: Fix memory allocation failure

Thangaraj Samynathan posted 1 patch 8 months, 1 week ago
drivers/net/ethernet/microchip/lan743x_main.c | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
[PATCH net-next v2] net: ethernet: microchip: lan743x: Fix memory allocation failure
Posted by Thangaraj Samynathan 8 months, 1 week ago
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

Signed-off-by: Thangaraj Samynathan <thangaraj.s@microchip.com>
---
v0
-Initial Commit

v1
-Modified GFP flags from GFP_KERNEL to GFP_ATOMIC
-added fixes tag

v2
-Resubmit net-next instead of net

---
 drivers/net/ethernet/microchip/lan743x_main.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/net/ethernet/microchip/lan743x_main.c b/drivers/net/ethernet/microchip/lan743x_main.c
index 23760b613d3e..8b6b9b6efe18 100644
--- a/drivers/net/ethernet/microchip/lan743x_main.c
+++ b/drivers/net/ethernet/microchip/lan743x_main.c
@@ -2495,8 +2495,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.
-- 
2.25.1
Re: [PATCH net-next v2] net: ethernet: microchip: lan743x: Fix memory allocation failure
Posted by Simon Horman 8 months, 1 week ago
On Thu, Apr 10, 2025 at 09:40:34AM +0530, Thangaraj Samynathan wrote:
> 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
> 
> Signed-off-by: Thangaraj Samynathan <thangaraj.s@microchip.com>
> ---
> v0
> -Initial Commit
> 
> v1
> -Modified GFP flags from GFP_KERNEL to GFP_ATOMIC
> -added fixes tag
> 
> v2
> -Resubmit net-next instead of net

Hi Thangaraj,

Thanks for the update. And sorry for not noticing this
in my earlier review. But I have some more feedback:

* I don't think it is correct to refer to this as fixing a failure
  in the subject.

* I do think the subject prefix can be shortened to 'net: lan743x: '



Perhaps something more like this?

	[PATCH net-next v3] net: lan743x: Allocate rings outside ZONE_DMA

And perhaps also mention in the commit message that this
is consistent with the other caller of lan743x_rx_init_ring_element().

Thanks!
Re: [PATCH net-next v2] net: ethernet: microchip: lan743x: Fix memory allocation failure
Posted by Rengarajan.S@microchip.com 8 months ago
Hi Simon,
Thanks for the comments. Have addressed your comments in the next
revison.

Thanks,
Thangaraj Samynathan

On Fri, 2025-04-11 at 17:53 +0100, Simon Horman wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you
> know the content is safe
> 
> On Thu, Apr 10, 2025 at 09:40:34AM +0530, Thangaraj Samynathan wrote:
> > 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
> > 
> > Signed-off-by: Thangaraj Samynathan <thangaraj.s@microchip.com>
> > ---
> > v0
> > -Initial Commit
> > 
> > v1
> > -Modified GFP flags from GFP_KERNEL to GFP_ATOMIC
> > -added fixes tag
> > 
> > v2
> > -Resubmit net-next instead of net
> 
> Hi Thangaraj,
> 
> Thanks for the update. And sorry for not noticing this
> in my earlier review. But I have some more feedback:
> 
> * I don't think it is correct to refer to this as fixing a failure
>   in the subject.
> 
> * I do think the subject prefix can be shortened to 'net: lan743x: '
> 
> 
> 
> Perhaps something more like this?
> 
>         [PATCH net-next v3] net: lan743x: Allocate rings outside
> ZONE_DMA
> 
> And perhaps also mention in the commit message that this
> is consistent with the other caller of
> lan743x_rx_init_ring_element().
> 
> Thanks!