From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id E3C47C4167B for ; Wed, 29 Nov 2023 03:12:47 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 774BD6B0390; Tue, 28 Nov 2023 22:12:47 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 725356B0391; Tue, 28 Nov 2023 22:12:47 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 5A0526B0392; Tue, 28 Nov 2023 22:12:47 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 48B286B0390 for ; Tue, 28 Nov 2023 22:12:47 -0500 (EST) Received: from smtpin21.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay05.hostedemail.com (Postfix) with ESMTP id 1ACC74046F for ; Wed, 29 Nov 2023 03:12:47 +0000 (UTC) X-FDA: 81509519574.21.82C74EA Received: from mail-pg1-f179.google.com (mail-pg1-f179.google.com [209.85.215.179]) by imf09.hostedemail.com (Postfix) with ESMTP id 3F7BF14000B for ; Wed, 29 Nov 2023 03:12:44 +0000 (UTC) Authentication-Results: imf09.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=BAaSyPb4; spf=pass (imf09.hostedemail.com: domain of liangchen.linux@gmail.com designates 209.85.215.179 as permitted sender) smtp.mailfrom=liangchen.linux@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1701227565; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=EZhQ5pyhSu2aC+i2aVP3kNto/sJoMVZjpeEiZjmVcRs=; b=7AFekta0/fG7AJqYPDLsv5NyWLE/WyJGmhNtSL9283LwfPBV4qoTdhL4RyxCi6K8NWhyh2 0mEBVNauBw72vNm493hfgdNXT8X4qBsF0/SE54l0qSwerkWBa5K0E5qJOm6D9nqAOovjpX yhwqnY9oM5KiHWlMe987qylm2Fs9FH0= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1701227565; a=rsa-sha256; cv=none; b=Z35c9AnSmjxOmjR4fSKzg2YCBQz4zR6bY70kOyr5bWyN2EAoZ2prsdDbC141pwAf33VkL0 zUN7yYMhv5O5An2ccBqFzGH9PD38nuvPWDYO2ZntV7H+Ek4lkiGdW9xju8Y1r0+60Lf2SB hhPI4Thfrftci6vyFawl6t7dsISLqfk= ARC-Authentication-Results: i=1; imf09.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=BAaSyPb4; spf=pass (imf09.hostedemail.com: domain of liangchen.linux@gmail.com designates 209.85.215.179 as permitted sender) smtp.mailfrom=liangchen.linux@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-pg1-f179.google.com with SMTP id 41be03b00d2f7-5bcfc508d14so4490484a12.3 for ; Tue, 28 Nov 2023 19:12:44 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1701227564; x=1701832364; darn=kvack.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=EZhQ5pyhSu2aC+i2aVP3kNto/sJoMVZjpeEiZjmVcRs=; b=BAaSyPb4Kn1mZOVis33D6BrzDMC/jwl4+9X5ThIZdXDd4sP+mQ+9ylvjtKX/phFetG bjykbUf4Gj+eKiapb8Nd17MjvpzXwcJDxrWkYizDFsAO9dz5E/eiFCas2pm/bF9KkaXu /XvOJecvhmYz7oRNnAwpFsNnkSgTMsn/kPQmctjCi9BeofiZY2VnwxF+DnMC+UnfhNA7 Li1jsugt5gTzXEI2s0EajPuDJz2LssXpglj4jmU54moruZ7SHdzK1dISRIt8LMCLDTw+ 92puEeXUB31Fmxhg74UlTRoJaJ7B+OtpYO7Sa2khalSGWD6jexQLS/NnPH6S1Z87Rq2y cKfg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1701227564; x=1701832364; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=EZhQ5pyhSu2aC+i2aVP3kNto/sJoMVZjpeEiZjmVcRs=; b=BttJoHsoTv8DJ/iJv8lAtLv8b9Wx35kcOE5YDtyFnEme4aiqj0Da502M2Jbdw5XYLv OgH2IvacTU6bM+BpQ/gMNr6AMSAtu1WHdvK73T/+WDm+Pk3uhbHvZV4rALLReCVZk6TD pdoLSOKwMr31HkuSH75JclinbBoVapq0dgdU1++DJLHk3BL6qTcnAGcX79/dKaFIdIJh Y/eSIYkSTzfa8PH8KXUiGd88UuPu2C1WU9Pu+qAzPIp8+CqWso8R2iBljvGPEh1qAnSA FX2s94kQhWk5CBU5kkb72vbARYHwBa5bXae80y3vGiW83nITO5FxD3zqADQs+M4sTX5D WJQQ== X-Gm-Message-State: AOJu0YxVA9Bl7qK9M7ZBVhJ0A1aBeiZzLVVtvas6tOr1hBbIHr/ra7dd XIvuL4kv/X70zsFATkLxcgc= X-Google-Smtp-Source: AGHT+IFS463sOjjqsuSCXjK5dty4tcKth0NS3/VxeZkBQl0dhRNCDHzq+uwJ7dI9ezaE73E36uGzYA== X-Received: by 2002:a05:6a20:258f:b0:18c:6559:37f8 with SMTP id k15-20020a056a20258f00b0018c655937f8mr15546782pzd.34.1701227564132; Tue, 28 Nov 2023 19:12:44 -0800 (PST) Received: from localhost.localdomain ([89.187.161.180]) by smtp.gmail.com with ESMTPSA id q10-20020a170902daca00b001cfc46baa40sm5669287plx.158.2023.11.28.19.12.39 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 28 Nov 2023 19:12:43 -0800 (PST) From: Liang Chen To: davem@davemloft.net, edumazet@google.com, kuba@kernel.org, pabeni@redhat.com, hawk@kernel.org, ilias.apalodimas@linaro.org, linyunsheng@huawei.com Cc: netdev@vger.kernel.org, linux-mm@kvack.org, liangchen.linux@gmail.com Subject: [PATCH net-next v4 3/4] skbuff: Add a function to check if a page belongs to page_pool Date: Wed, 29 Nov 2023 11:12:00 +0800 Message-Id: <20231129031201.32014-4-liangchen.linux@gmail.com> X-Mailer: git-send-email 2.31.1 In-Reply-To: <20231129031201.32014-1-liangchen.linux@gmail.com> References: <20231129031201.32014-1-liangchen.linux@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 3F7BF14000B X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: nquxu1bzkj11qana4qw4ocr6z1bw7fws X-HE-Tag: 1701227564-690124 X-HE-Meta: U2FsdGVkX1+46BY0fjAw1fkexsIfa0wNbGZoOGqgcdODNaj1PWgmkfzaxxdpTMnyPkfvNUqRW7/KvggTVJ+W+O4vT3i8VYitLgH2dhcqaQhRqiMLV1+oswG7XCOAVOiLGc1ltJyXukHeuTzW4UgU72mBpv/oIRSFEW/f991bGqKHilChdw1Al3HCvAlv6Y4hjQ4NAeoPG9o2OHM0ntHiqiVy181XslxoizPapXIrt8T3wC8tLUCmlkadjzJdjIduoF4AKgFx4vo8pieYIPzd1UCj+qRE02LOCF4jytRxLpqZCU8Lov5MmjTWJsv/I3g0NyyqwtUS1UWJE0kgzq1k2+qGm4uBDV2j5LZsbKG5UzG8n3u0eTzwEmXH5Ro77/FYStFdAZNRG88Jjyf04efDRTwA7rr9h50c3GM0gUsVwIsk6OM9kmHyqwkzrgHa66KK5RAUXpYXRIM4cYxufpXsOu+cJ99ohFViJbFRvO3jpz4IbN+WSd2yCiRZaIc4tpbtWrRD1rxy2IbYmVbZo6RTgOYmOG1/cyOrQb0Zqqh2n+aX7b/+L8D14uZHw0xLyEZtsSc2qAPmv6f+XRh3m3uS8p3q+H4GLrm+YUWbD/pHfJ855W/fpLU0j+6UAK16Bqs2B6zL8vXJd030c1N/4A62IJZZnjrmJ2yy0exXDzJeRhu9oSXBvDYzfwbJOWTtTQspPgnudem5oZnchezznpSRIjYjsUhVulVdktRBm8Fr0X1Ute5brSiK6Q3N7LFBlloz7NBDejub2ZhNMlw5dCXly5xUIJmBBE51eRrgzjV+4Q0NMH50yk22DG/E823elmBQFKi52ZP6sXXsKI4DFRTcTeAkfxanEkfK3PDV9FxA06gFNOMnSXNPwisSNp4+/7aJU71R9wIzTvgHmUe3WTaQDolSrNBxU32tB85JoCuk4gDNX8wHooRi8fE4iFoh/+OPeFwQZ39gzJeqh4mwWSU bSQf/S7K d82aR4FeKw279De+nocnp5rqQlORk/2nozmnrIK+jdjCTK4JxttOPdh1VjZkkJ6kZNGfM0uFVycLbEE61V1wUHBPxXaVBZQyHoz6PmWx532DR7L8TBSTQ3Q1lXeWOZXWWy+CrOMTFvdmAmhFuFHN//QaulkWSbLar+EEHz6EnrAxxedAB8BFJeVVrcT4Ol9kbAw4eBU01KUI7gIvT2a9QtD7zvcdqGzz65trYHMrxnMMgCqnOclWOQqknD5VHKrmhYRdfdX6lDIw/so1CR4FDWqNBbQQ7F/vvXDTIGYN593xAfby9Z1sq+k3XsXehmv7P95HP9dUIkt2vMAtUNl0JSBfjkhqTWX6Ud7q24QKVfZkHdQqHua1DQ4K2U0ateTrzqhYkIv/OQzumsWL3Hzo4YwgaUTUVcv/FFwpHscjn74BNN73KANQ0ofAZhP6OI9Wev3ZVA8h+/bSRbS7zaYvgMS/Dpc80WcNh3tzn+JmYK3BKvFLjPgUDYGLwSOTYu5GSEjiZoZvhmtkPnjlDPZcScTvxz335EOFC3l9S7EmV20DS5CzVjphp6ZkCQttpjvY4Ywjv2XdS+OaSsKmo1iToB1Wu6StcC0Kr6+o+6v71B1YWiXRqon2f4kBTquNWCjQU5CXB6jLZ5q4PyoMC2h8DKRwK9vNWTDZ6AIjE X-Bogosity: Ham, tests=bogofilter, spamicity=0.003710, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: 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 --- 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..310207389f51 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 inline bool skb_frag_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(!skb_frag_is_pp_page(page))) return false; pp = page->pp; -- 2.31.1