Subject: Re: [PATCH net-next 1/3] net: allow > 0 order atomic page alloc in skb_page_frag_refill

From: "Michael S. Tsirkin" <[email-masked]>
Date: Mon, 23 Dec 2013 21:19:27 +0200

On Mon, Dec 23, 2013 at 09:30:38AM -0800, Eric Dumazet wrote:
> On Mon, 2013-12-23 at 14:53 +0200, Michael S. Tsirkin wrote:
> > On Mon, Dec 16, 2013 at 04:16:27PM -0800, Michael Dalton wrote:
> > > skb_page_frag_refill currently permits only order-0 page allocs
> > > unless GFP_WAIT is used. Change skb_page_frag_refill to attempt
> > > higher-order page allocations whether or not GFP_WAIT is used. If
> > > memory cannot be allocated, the allocator will fall back to
> > > successively smaller page allocs (down to order-0 page allocs).
> > > 
> > > This change brings skb_page_frag_refill in line with the existing
> > > page allocation strategy employed by netdev_alloc_frag, which attempts
> > > higher-order page allocations whether or not GFP_WAIT is set, falling
> > > back to successively lower-order page allocations on failure. Part
> > > of migration of virtio-net to per-receive queue page frag allocators.
> > > 
> > > Signed-off-by: Michael Dalton <[email-masked]>
> > 
> > I don't get how this is related to patch 3/3 exactly.
> > That one seems to clamp the allocations from ewma to at most
> > PAGE_SIZE, so how to we get higher-order allocations here?
> > Could you clarify please?
> 
> If your ewma stabilizes at 2050 bytes per frag, using order-0 page will
> waste ~50% of memory.
> 

Aha, got it. FWIW
Acked-by: Michael S. Tsirkin <[email-masked]>

-- 
MST