Re: [PATCH RFC v2 02/12] sock: skb_copy_ubufs support for compound pages
From: Willem de Bruijn <willemdebruijn.kernel@gmail.com>
Date: 2017-02-23 01:52:39
From: Willem de Bruijn <willemdebruijn.kernel@gmail.com>
Date: 2017-02-23 01:52:39
quoted
- 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.
quoted
+ 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.