Subject: Re: [PATCH V3,net-next, 3/4] net: mana: Enable RX path to handle various MTU sizes

From: Jakub Kicinski <[email-masked]>
Date: Mon, 17 Apr 2023 10:52:29 -0700

On Sat, 15 Apr 2023 14:25:29 +0000 Haiyang Zhang wrote:
> > Allocating frag larger than a page is not safe.  
> 
>  I saw other drivers doing this - use napi_alloc_frag for size bigger than a page.
> And it returns compound page. Why it's not safe? Should we use other allocator
> when need compound pages?

I believe so. There was a thread about this within the last year.
Someone was trying to fix the page frag allocator to not fall back
to order 0 pages in case of failure if requested size is > PAGE_SIZE.
But there was push back and folks were saying that it's simply not 
a case supported by the frag allocator. 🤷️

> > Frag allocator falls back to allocating single pages, doesn't it?  
> 
> Actually I checked it. Compound page is still returned for size smaller than PAGE_SIZE,
> so I used single page allocation for that.

https://elixir.bootlin.com/linux/v6.3-rc6/source/mm/page_alloc.c#L5723

Jumbo frames should really be supported as scatter transfers, 
if possible.