Lines Matching refs:pfrag
2827 bool skb_page_frag_refill(unsigned int sz, struct page_frag *pfrag, gfp_t gfp) in skb_page_frag_refill() argument
2829 if (pfrag->page) { in skb_page_frag_refill()
2830 if (page_ref_count(pfrag->page) == 1) { in skb_page_frag_refill()
2831 pfrag->offset = 0; in skb_page_frag_refill()
2834 if (pfrag->offset + sz <= pfrag->size) in skb_page_frag_refill()
2836 put_page(pfrag->page); in skb_page_frag_refill()
2839 pfrag->offset = 0; in skb_page_frag_refill()
2843 pfrag->page = alloc_pages((gfp & ~__GFP_DIRECT_RECLAIM) | in skb_page_frag_refill()
2847 if (likely(pfrag->page)) { in skb_page_frag_refill()
2848 pfrag->size = PAGE_SIZE << SKB_FRAG_PAGE_ORDER; in skb_page_frag_refill()
2852 pfrag->page = alloc_page(gfp); in skb_page_frag_refill()
2853 if (likely(pfrag->page)) { in skb_page_frag_refill()
2854 pfrag->size = PAGE_SIZE; in skb_page_frag_refill()
2861 bool sk_page_frag_refill(struct sock *sk, struct page_frag *pfrag) in sk_page_frag_refill() argument
2863 if (likely(skb_page_frag_refill(32U, pfrag, sk->sk_allocation))) in sk_page_frag_refill()