Re: [PATCH net-next v6 3/4] skbuff: Add a function to check if a page belongs to page_pool

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Liang,


On Thu, 30 Nov 2023 at 13:59, Liang Chen <liangchen.linux@xxxxxxxxx> wrote:
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: Liang Chen <liangchen.linux@xxxxxxxxx>
Reviewed-by: Yunsheng Lin <linyunsheng@xxxxxxxxxx>
---
 net/core/skbuff.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

diff --git a/net/core/skbuff.c b/net/core/skbuff.c
index b157efea5dea..31e57c29c556 100644
--- a/net/core/skbuff.c
+++ b/net/core/skbuff.c
@@ -890,6 +890,11 @@ static void skb_clone_fraglist(struct sk_buff *skb)
                skb_get(list);
 }

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

That's fine, but why _frag? The same logic applies to non fragmented pages no?
So rename it to skb_from_pp()?

+
 #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(!skb_frag_is_pp_page(page)))
                return false;

        pp = page->pp;
--
2.31.1


[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux