[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAF=yD-KDH+pMjrbhP+nkD=JGwFNXL8EOHrxAGJYH=iQeLibOyw@mail.gmail.com>
Date: Wed, 22 Feb 2017 20:51:57 -0500
From: Willem de Bruijn <willemdebruijn.kernel@...il.com>
To: Eric Dumazet <eric.dumazet@...il.com>
Cc: Network Development <netdev@...r.kernel.org>,
Willem de Bruijn <willemb@...gle.com>
Subject: Re: [PATCH RFC v2 02/12] sock: skb_copy_ubufs support for compound pages
>>
>> - page = alloc_page(gfp_mask);
>> + page = skb_frag_page(f);
>> + if (page_count(page) == 1) {
>> + skb_frag_ref(skb, i);
>
> This could be : get_page(page);
Ah, indeed. Thanks.
>
>> + goto copy_done;
>> + }
>> +
>> + if (f->size > PAGE_SIZE) {
>> + order = get_order(f->size);
>> + mask |= __GFP_COMP;
>
> Note that this would probably fail under memory pressure.
>
> We could instead try to explode the few segments into order-0 only
> pages.
Good point. I'll revise to use only order-0 here.
Powered by blists - more mailing lists