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 163A2C54ED0 for ; Fri, 23 May 2025 17:21:34 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id A90D46B0093; Fri, 23 May 2025 13:21:33 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id A19FC6B009A; Fri, 23 May 2025 13:21:33 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 92F996B009E; Fri, 23 May 2025 13:21:33 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id 746026B0093 for ; Fri, 23 May 2025 13:21:33 -0400 (EDT) Received: from smtpin18.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 37F2080BF3 for ; Fri, 23 May 2025 17:21:33 +0000 (UTC) X-FDA: 83474839266.18.B5CC12A Received: from mail-pl1-f179.google.com (mail-pl1-f179.google.com [209.85.214.179]) by imf20.hostedemail.com (Postfix) with ESMTP id 52F971C0005 for ; Fri, 23 May 2025 17:21:31 +0000 (UTC) Authentication-Results: imf20.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=eNHhBNPe; spf=pass (imf20.hostedemail.com: domain of almasrymina@google.com designates 209.85.214.179 as permitted sender) smtp.mailfrom=almasrymina@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1748020891; 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-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=rtih47zf1DDRpaty491xvgvfr7R2FPgNSS3Jfeu3Tb4=; b=uC+iETu50rJTsG7CmFoqXTdD2kd29gka5u1VmumsGME4zBX3agtdyHtBdye0YGya3PXXpb k3xQUdFJR5ZCAoAFJryZc0b5W6i/xvqpt7uSZ8W4JmDPz8k+0D8EpnOzztIddtCN+CMedt 7kPjVQLJMqw4o1zNuLIQZMSVrbrkhfA= ARC-Authentication-Results: i=1; imf20.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b=eNHhBNPe; spf=pass (imf20.hostedemail.com: domain of almasrymina@google.com designates 209.85.214.179 as permitted sender) smtp.mailfrom=almasrymina@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1748020891; a=rsa-sha256; cv=none; b=BRnGb/ddLTBM2rnHKVRN+UVWYRNG0g9szE6S4qmeYqQV5hInNtrSckE0qPJ0NTjs4Py5dY 35DG2WxdWqfPOtJZguft1QItjcJfDftEF+3hXFBUaRGbBsyJx0OhN0KhonRCo3tB0Jotnz 409d2mTCMOlKvSMDdMQ+gv/W+VwY5wI= Received: by mail-pl1-f179.google.com with SMTP id d9443c01a7336-231ba6da557so10775ad.1 for ; Fri, 23 May 2025 10:21:31 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1748020890; x=1748625690; darn=kvack.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=rtih47zf1DDRpaty491xvgvfr7R2FPgNSS3Jfeu3Tb4=; b=eNHhBNPeqUfXcbmUAwcJDQuNa+txc8XFBtodeSZyvyf/A8rB5Lco52eBtkf+ysRRls mD6bGqH4hsompxANBtVWnRkKE3iEjerDwNlU6Un7ihz1G2kKhcF4rneYzpZIzEMNikyU 67sjoGIKJZX0mKUOfvMoJGfQQCjsgXnnb/t1tmK+AyAUY5n+Sk/1lbXaeEpwZsZQrt7B VZpyb1Wb5f9k1yg6Am27TI/nI9H2/+y/WIwf03MBpiA9nrjQBj91QZg6YhN2/a2GWmSn g+zSyxd6a7Q2OOify5g9WdjhhP7Lo7TBvZCGE2xZMHArcY5JcDXYx/CujrNpEE+UkDdT lGzg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1748020890; x=1748625690; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=rtih47zf1DDRpaty491xvgvfr7R2FPgNSS3Jfeu3Tb4=; b=rnLzAIT/CHHvRIzhH8NQfu8M8blb9QyvzABfz3/PU7GVpUQkyOa1fyv9OvTjnZQpQ/ hWbVMrGVJuHS/luBzsCwNcgkJBQCxjjBKSeJ6uemVuq4FHmytrOCWbWD5q8xmuH1i6Dq wc584XiXIZ+pVhyncDewPGJCmSawm/0wN2h2los4VSI7E4DNcEmf+var6tvEFdLbeNAl FIFn+SLKYF3RM01zUBIDsggXoXKaRbJJsRoBSb6YtmwseCVDEnd6/7haPeEZ32ZXmWlt AmoqLCXW4ZA6J0rBM++jjDspYj/dN1u8CXmkyhAxYJlES/ZT1IJrjAV5+JvBTf/Ak3DF RMgw== X-Forwarded-Encrypted: i=1; AJvYcCU5aiewCsBpNjSrpwKn4Kv3oz9jBoR0di3EX1bXrh1I2YsMe7O13cHFzX3plwa/nbG4hBxaDiRR2w==@kvack.org X-Gm-Message-State: AOJu0Yw9BVkdR6x+/RHQQ8pJZbk5NPpWVyhvpQL9WXvfVSPvt5OwAq6P Bjo7kPgPMkhlgIcMmZ9XqpA+ylj1s4FgDOsNz70Ai6RgdMa7HvRGp0RHG0qwJ1z22G329cvvoLB acTNCHccH5imwW2dSycz/BXLzOHJQK7DXgm26nwF6 X-Gm-Gg: ASbGncvfpzjrIuSXLPC/5xGIvHg4+e1541+Fx9AI0wmczwIsNurnfOoM+f6fIyqTbuz TupwWklETbzf3w9w0yk9O1OPEOOqQn/3R6vzegVCg9pMLufn1cO/qNlcGy9PGTUmqnd8OAXkKpF PL8nEOxSIN7z/WSSvFUtRO5ppc3K1GcO5poz24TmoCoQRhCiUtqPgfFG+mdbRAhpTV1Jj50dQ+a g== X-Google-Smtp-Source: AGHT+IH6uGypDsxjqNqq6GSe13hjIu4fqtTlhQ7FXduEvXmZSL8NE0edJn+/pF949ueWwmc6huc8t1yB4vZ6UdiCEdU= X-Received: by 2002:a17:902:c94c:b0:21b:b3c4:7e0a with SMTP id d9443c01a7336-233f343a1demr2947455ad.13.1748020889832; Fri, 23 May 2025 10:21:29 -0700 (PDT) MIME-Version: 1.0 References: <20250523032609.16334-1-byungchul@sk.com> <20250523032609.16334-13-byungchul@sk.com> In-Reply-To: <20250523032609.16334-13-byungchul@sk.com> From: Mina Almasry Date: Fri, 23 May 2025 10:21:17 -0700 X-Gm-Features: AX0GCFt13q3gircPas-6ILetDX9qRyDvPr7gIiwpBXG0M4D4YVrt7-2ZPVq-CWg Message-ID: Subject: Re: [PATCH 12/18] page_pool: use netmem APIs to access page->pp_magic in page_pool_page_is_pp() To: Byungchul Park Cc: willy@infradead.org, netdev@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, kernel_team@skhynix.com, kuba@kernel.org, ilias.apalodimas@linaro.org, harry.yoo@oracle.com, hawk@kernel.org, akpm@linux-foundation.org, davem@davemloft.net, john.fastabend@gmail.com, andrew+netdev@lunn.ch, asml.silence@gmail.com, toke@redhat.com, tariqt@nvidia.com, edumazet@google.com, pabeni@redhat.com, saeedm@nvidia.com, leon@kernel.org, ast@kernel.org, daniel@iogearbox.net, david@redhat.com, lorenzo.stoakes@oracle.com, Liam.Howlett@oracle.com, vbabka@suse.cz, rppt@kernel.org, surenb@google.com, mhocko@suse.com, horms@kernel.org, linux-rdma@vger.kernel.org, bpf@vger.kernel.org, vishal.moola@gmail.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Queue-Id: 52F971C0005 X-Stat-Signature: xr1wgq4z84ba5jmeboyghz3e3rmnr4ak X-Rspam-User: X-Rspamd-Server: rspam04 X-HE-Tag: 1748020891-538836 X-HE-Meta: U2FsdGVkX1/XK6KLOGHOdZnUAr4j0JPcx3hX8fnPUgYacWCd/YqlkUMayd1+5+Qp5hAdEwp89qXW9NBYMWzaljyzXoGSTWYipzSPhsDqoLb6OdHVdaHQV60Jn5pxjR87YUMTQhOwnuqyM5JiywIOQCEltFs1B0cMfxHRBBVjbhfUHaf8NeV8n0gZfz7IFhootz9pShYDgFmHXLrDBD1oTP4euX38GLwhZHpgGtxSV6jAzSvS2Jah3t9gAYYcv1luV6YM7wQa/1iL1IM0cNSkzPpwjOeEMXgTSzF8uAAuTGDr58hFsjuTDn8EhfJQa2cyCeqBY6z3t1/nKwhY1bYdQjdwf1fBNENBi/M7i8L08TeJ4+b4BGoCJd6a6muqq8l7yLfkTqPEzLOSZwX8DYTBCOGmt0PEThep+lEyjkKvfsPYUbaAcwSEUHRZVq8bz+u+yliGTm/bC/R558wixT8TYjDXGdM7Q9fTL0nRqsBIdbQdcvljoP3ddvkc1I7ng+oBZz1SR6rHFCgiogbyELjbAu0So9F/Sj6B0rCSNpBnz+FgdnD5JrdnthNyocB1jbQizAb8BKj6dWxpepWc2eBWm0/PiSM9cibk3zz6U4PJun48FpLXfvh1SMVauBBSqYBYn1M/41lkIjMXQOIcuAkQHvNCwEQxYJL5MttbZynubFV736G9JguvZMU6OnPplg/IQxA7nBoAI02LaGqp2fqJb7HltgCzoyidSeHyDP67quNlTCkAaxmeoRdXrd8biNDXOE7Lk9AjMh+m0diCUP371si2WREweqXwYyq9pjYsxxBEwKrrZvcyhRO+Vsk5eCfBHqos7j6y/udjqoBImqIr/Iyt1BEYOtHX7sVKS6iOSDyQRvIwRs6hMmHSikhZgtPwCP5w/UzmutdWbc+OwmrnRce5BevQGRpddJItDGpGHLS0pzzKYnxTxVEr6Z+U4JJNfshEwMRLJPhO1MZDmIT Bcq8rZjv VkzCb48mR4VvUNtDVV8806zwdeocQQh6yL3ECVLOpsy8E6ItNPKWk/xqSrx0oO+3QXoiQBtKU9gyZjDkz0IgtDmqLyAkPNEwXyg/Ea7EKOb6/crmn/SjhCV+RG3I93mFDt1lB4akk135JnnPr+DWEmzOUeP5VS6MATU6iyvjjH1Nu4ZZQgaAnh73+TUBn6DKZ6Yjgdl8aCGZfnQNzMvuC7HQhS5vns2eqf04QJ6LDKabFmlnl/ZiJx5gSZqNYIOqdMqPfxjo1FMDMSRM2vgketBFKdrmo6zGRdjK0i1I/rSwvgB+x3FR2v2zJg3MIWfwyUOsXH1xaz7OUMzHdcSPlq4QMhJugdI2XluybUYBIEhJoaFQaROBLxe4OfnzCYEVSHpll X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: List-Subscribe: List-Unsubscribe: On Thu, May 22, 2025 at 8:26=E2=80=AFPM Byungchul Park w= rote: > > To simplify struct page, the effort to seperate its own descriptor from > struct page is required and the work for page pool is on going. > > To achieve that, all the code should avoid accessing page pool members > of struct page directly, but use safe APIs for the purpose. > > Use netmem_is_pp() instead of directly accessing page->pp_magic in > page_pool_page_is_pp(). > > Signed-off-by: Byungchul Park > --- > include/linux/mm.h | 5 +---- > net/core/page_pool.c | 5 +++++ > 2 files changed, 6 insertions(+), 4 deletions(-) > > diff --git a/include/linux/mm.h b/include/linux/mm.h > index 8dc012e84033..3f7c80fb73ce 100644 > --- a/include/linux/mm.h > +++ b/include/linux/mm.h > @@ -4312,10 +4312,7 @@ int arch_lock_shadow_stack_status(struct task_stru= ct *t, unsigned long status); > #define PP_MAGIC_MASK ~(PP_DMA_INDEX_MASK | 0x3UL) > > #ifdef CONFIG_PAGE_POOL > -static inline bool page_pool_page_is_pp(struct page *page) > -{ > - return (page->pp_magic & PP_MAGIC_MASK) =3D=3D PP_SIGNATURE; > -} I vote for keeping this function as-is (do not convert it to netmem), and instead modify it to access page->netmem_desc->pp_magic. The reason is that page_pool_is_pp() is today only called from code paths we have a page and not a netmem. Casting the page to a netmem which will cast it back to a page pretty much is a waste of cpu cycles. The page_pool is a place where we count cycles and we have benchmarks to verify performance (I pointed you to page_pool_bench_simple on the RFC). So lets avoid the cpu cycles if possible. --=20 Thanks, Mina