HI Liang, [...] > } > > +/** > + * skb_pp_frag_ref() - Increase fragment reference count of a page > + * @page: page of the fragment on which to increase a reference > + * > + * Increase fragment reference count (pp_ref_count) on a page, but if it is > + * not a page pool page, fallback to increase a reference(_refcount) on a > + * normal page. > + */ > +static void skb_pp_frag_ref(struct page *page) > +{ > + struct page *head_page = compound_head(page); > + > + if (likely(skb_frag_is_pp_page(head_page))) > + page_pool_ref_page(head_page); > + else > + page_ref_inc(head_page); I think I've mentioned this in the past, but I think shoehorning page pool awareness in the skbuff is not the direction we want to go. Up to now, we've tried hard to make that as seamless as possible. The code looks correct, but I'd prefer people with a better understanding of the core network stack to comment on this. [...] Thanks /Ilias