Commit 8cfa2dee authored by Liang Chen's avatar Liang Chen Committed by David S. Miller
Browse files

skbuff: Add a function to check if a page belongs to page_pool



Wrap code for checking if a page is a page_pool page into a
function for better readability and ease of reuse.

Signed-off-by: default avatarLiang Chen <liangchen.linux@gmail.com>
Reviewed-by: default avatarYunsheng Lin <linyunsheng@huawei.com>
Reviewed-by: default avatarIlias Apalodimas <ilias.apalodimas@linaro.org>
Reviewed-by: default avatarMina Almasry <almarsymina@google.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent aaf153ae
Loading
Loading
Loading
Loading
+6 −1
Original line number Diff line number Diff line
@@ -890,6 +890,11 @@ static void skb_clone_fraglist(struct sk_buff *skb)
		skb_get(list);
}

static bool is_pp_page(struct page *page)
{
	return (page->pp_magic & ~0x3UL) == PP_SIGNATURE;
}

#if IS_ENABLED(CONFIG_PAGE_POOL)
bool napi_pp_put_page(struct page *page, bool napi_safe)
{
@@ -905,7 +910,7 @@ bool napi_pp_put_page(struct page *page, bool napi_safe)
	 * and page_is_pfmemalloc() is checked in __page_pool_put_page()
	 * to avoid recycling the pfmemalloc page.
	 */
	if (unlikely((page->pp_magic & ~0x3UL) != PP_SIGNATURE))
	if (unlikely(!is_pp_page(page)))
		return false;

	pp = page->pp;