Lines Matching refs:pfrag
2444 bool skb_page_frag_refill(unsigned int sz, struct page_frag *pfrag, gfp_t gfp) in skb_page_frag_refill() argument
2446 if (pfrag->page) { in skb_page_frag_refill()
2447 if (page_ref_count(pfrag->page) == 1) { in skb_page_frag_refill()
2448 pfrag->offset = 0; in skb_page_frag_refill()
2451 if (pfrag->offset + sz <= pfrag->size) in skb_page_frag_refill()
2453 put_page(pfrag->page); in skb_page_frag_refill()
2456 pfrag->offset = 0; in skb_page_frag_refill()
2460 pfrag->page = alloc_pages((gfp & ~__GFP_DIRECT_RECLAIM) | in skb_page_frag_refill()
2464 if (likely(pfrag->page)) { in skb_page_frag_refill()
2465 pfrag->size = PAGE_SIZE << SKB_FRAG_PAGE_ORDER; in skb_page_frag_refill()
2469 pfrag->page = alloc_page(gfp); in skb_page_frag_refill()
2470 if (likely(pfrag->page)) { in skb_page_frag_refill()
2471 pfrag->size = PAGE_SIZE; in skb_page_frag_refill()
2478 bool sk_page_frag_refill(struct sock *sk, struct page_frag *pfrag) in sk_page_frag_refill() argument
2480 if (likely(skb_page_frag_refill(32U, pfrag, sk->sk_allocation))) in sk_page_frag_refill()