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 A480ACFA478 for ; Wed, 23 Oct 2024 21:09:32 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3F0FD6B00AC; Wed, 23 Oct 2024 17:09:32 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 355476B00AE; Wed, 23 Oct 2024 17:09:32 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 21AF66B00AF; Wed, 23 Oct 2024 17:09:32 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 01C986B00AC for ; Wed, 23 Oct 2024 17:09:31 -0400 (EDT) Received: from smtpin19.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 76DAB160EB8 for ; Wed, 23 Oct 2024 21:09:11 +0000 (UTC) X-FDA: 82706107386.19.2398109 Received: from mail-wm1-f45.google.com (mail-wm1-f45.google.com [209.85.128.45]) by imf06.hostedemail.com (Postfix) with ESMTP id 4517A18000C for ; Wed, 23 Oct 2024 21:09:17 +0000 (UTC) Authentication-Results: imf06.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b="gnf5N4M/"; spf=pass (imf06.hostedemail.com: domain of surenb@google.com designates 209.85.128.45 as permitted sender) smtp.mailfrom=surenb@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=1729717567; 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=D1Hc6TqTcrhd8OnsnaGs3m8D6+LMkz7l3Gr9ozPNQss=; b=5Xm/tSFDQZtYDd/Pbjfz/Ej9atR48yGeWbwrvDBvejaWOfgjaKPaG2SZCMdkMfgsjK7Zrs 4VAboVmrJkpTmjAE2/yqSVxeOhNMuqUTrlcuJ+sOte9c5KRWx/KHS2P7aYHeml5tOaDcE5 1nY8XlfgU9eIua9uEBcR2Dscvr/MY+4= ARC-Authentication-Results: i=1; imf06.hostedemail.com; dkim=pass header.d=google.com header.s=20230601 header.b="gnf5N4M/"; spf=pass (imf06.hostedemail.com: domain of surenb@google.com designates 209.85.128.45 as permitted sender) smtp.mailfrom=surenb@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1729717567; a=rsa-sha256; cv=none; b=aCueBgbmllYBCCPwEJWLG8qbAAzTIMNc9ddW2/v7K2/X8B1OW1EnTls9IIQbxJJpnd5oXt glXeJR4ioDY67pjtbB0nV44Rib80RWiz3QxVM9LYSzrGwTyYCG3mMTgB0m0oXBEQvI8hNj rkmxMjpzhNcT9DBsg5jGSRNeznpY+hs= Received: by mail-wm1-f45.google.com with SMTP id 5b1f17b1804b1-43153c6f70aso16205e9.1 for ; Wed, 23 Oct 2024 14:09:29 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20230601; t=1729717768; x=1730322568; 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=D1Hc6TqTcrhd8OnsnaGs3m8D6+LMkz7l3Gr9ozPNQss=; b=gnf5N4M/+n1Wgxo/5z5WtFRTOk+hNdMJgCsY4I1xuJtlsUE1XTOVp/NmL5yiCcDPWb 0SVHOH267c1XwBCddJJuF/n5cAAygXCEvefxqP4EXeJ0t9eYnfRv7zUMfXCCPdbqqKv/ 0ISp4am2vtnPzBcz5xT9TXmHjhYPxAj0tMLaPDWDHHegBYNLWsR/8BAP2bmFgouEBvCt hDFSwdq0c7fJjXRyVXRNL+GgZkEc51I2xXX7ze/dXiwy7hndZ7yHQ9Btqx7dkRMtH0Pf B4/NJ1UE5/kgwNfHxM27Y804nHyEfxdS7+4rNeCra4FUvhCu276GK7xqYgApdduXlFcO mXTA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1729717768; x=1730322568; 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=D1Hc6TqTcrhd8OnsnaGs3m8D6+LMkz7l3Gr9ozPNQss=; b=drDNnzOqzzidxcTj2kB12EwU1fp8lXwjsYrkJjXI85qbt205rTtZWyI5VZB75+tt8j AIJGNvhx7sXj2bneT1/vnoQ9wdiCSCUf3tG2LITh24tFMCWayL5+1KOE/wjg188U1khP YPhNIZTF2YpV3WKAwigIpvMfF7yYB47a0Qsv2rXT+Ij/bWpGHl8G2/Xu+KwQoOV3Mf8S 9LPWo8p7Q/dTT3BneCSfbG1/0CqWpkWL6cErNOV8T93lJGvzhfnA65OKSODKscLI8CmB QB5kF95jUncfHzEEhr3+QQgzMrIIcgPYAS9Z5B3XvOZtcQy8D+xuB0EK4qq9v9P3/yDL jEgA== X-Forwarded-Encrypted: i=1; AJvYcCV0QB2Ftq9rno3iq1X/gKQuBxJfaPXlxdfXxdYXjfLp0Iipi9VvhUtZYYoNznqKL+lVzB99t7yTgQ==@kvack.org X-Gm-Message-State: AOJu0YxsSN5wtehII+Gz2/bv0979Utp019OZCfRAKllWvkgbKJEW4xzO +AzsIOgjwbVSvTZccWf+ETqfgByyD88AphK0UP03CDE9j0sm1Zhtmh3+HzGf4AcpRJeLLi+fCGr RlLg9JzbBKY7IQWKGghb6aZp/5bTeZQvbtBfk X-Google-Smtp-Source: AGHT+IG7lHrCmkHrUK87/No/R3m5mQ51hRtR/sVg3+psInFw5wdf+0mCw9HD7V91WPK90Gie/P5wYbHJdFXnglBqC8A= X-Received: by 2002:a05:600c:b8d:b0:42b:a961:e51 with SMTP id 5b1f17b1804b1-4318a4ace7bmr1380915e9.0.1729717768323; Wed, 23 Oct 2024 14:09:28 -0700 (PDT) MIME-Version: 1.0 References: <20241023170759.999909-1-surenb@google.com> <20241023170759.999909-6-surenb@google.com> <20241023140017.e165544bf20bcb0c79bfee57@linux-foundation.org> In-Reply-To: <20241023140017.e165544bf20bcb0c79bfee57@linux-foundation.org> From: Suren Baghdasaryan Date: Wed, 23 Oct 2024 14:09:12 -0700 Message-ID: Subject: Re: [PATCH v4 5/6] alloc_tag: introduce pgtag_ref_handle to abstract page tag references To: Andrew Morton Cc: kent.overstreet@linux.dev, corbet@lwn.net, arnd@arndb.de, mcgrof@kernel.org, rppt@kernel.org, paulmck@kernel.org, thuth@redhat.com, tglx@linutronix.de, bp@alien8.de, xiongwei.song@windriver.com, ardb@kernel.org, david@redhat.com, vbabka@suse.cz, mhocko@suse.com, hannes@cmpxchg.org, roman.gushchin@linux.dev, dave@stgolabs.net, willy@infradead.org, liam.howlett@oracle.com, pasha.tatashin@soleen.com, souravpanda@google.com, keescook@chromium.org, dennis@kernel.org, jhubbard@nvidia.com, urezki@gmail.com, hch@infradead.org, petr.pavlu@suse.com, samitolvanen@google.com, da.gomez@samsung.com, yuzhao@google.com, vvvvvv@google.com, rostedt@goodmis.org, iamjoonsoo.kim@lge.com, rientjes@google.com, minchan@google.com, kaleshsingh@google.com, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-arch@vger.kernel.org, linux-mm@kvack.org, maple-tree@lists.infradead.org, linux-modules@vger.kernel.org, kernel-team@android.com Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: 4517A18000C X-Stat-Signature: nzcy6dcbz5cfiffsgeihm66f166afs14 X-Rspam-User: X-HE-Tag: 1729717757-358968 X-HE-Meta: U2FsdGVkX19l1wley1/ZB9YVGiPjvf0ziQeiJG8e1WrAQ/dwlrhy74ycFkZhwZ10qdSHcg3ZkcUc7bTR+AXzdbZ/+nP2O5D9aUAdC3rylQk+6bjXEp3wsGHaW80K1wkIcusQF6+i8dQHIWaUKEUaev9DmjZXuGjqn7RP4qylMcauDjcPkq2XlK62T5A7Ny+KV0SpqA7m+doiofaIdqpwkA5Zapmg5UkWSXatuibV/DWAo0G/wgMHlIAad2hceWzG/RlMjH4Y4EUMzMsGevFZbGeyxOM2jlR80628fRy5kwMJmE35+qWtHaoxiogYTUL9OWn+SBBAiRXlZeXjWKmW1bQh4cOLLmZl169/Fib6aY2kIiPWKnSuXJ6/ZKk05g0ovV2RhZ8mr7oZGDUuL85ZvvUc+koYRdzkBQ67n6QOxJjWVGWF3OB1CQ3uoEFDmc9RRHzlyTi+8460/TxhScCIjaC2ENh8CnRYQwwO4rd69ceh4L+1RVm7qb4+VtiT39LfdKme2bcVmCi12Bp1c9xalLny0aRTejdeC4NBNGM0LcZcIasbI5T0urgYrA0sXV13uA97SxKHoRGoRYT/X1cLiIYNUvuXZsaqKLlh0t7YSEYTFwwccM6k5rSVeDhegdV7Ss5KXMn70/M+gRzBuwDH0VzY4tY4RpXpB15U6xx/StKuO5QgOkwWUIshehnsIpo1fdbg9PiaHscmCaM8Mdh+w15VZz+8fKw2p2Rf1nQaTQOvK8AhfV/yaZcMOgJzEqQzkflkeiVZpLg7/ls6SVYpW4GDmVjyV6v465eTlZs8y09dERCNvDQJf5aCfQvJeEy6Yat01o2sr5yhYFQhrqGscnExBtT6e7M3rH/gx+Wj79Bt4ePXSK5li1RYTRxVVpJxVc3GkvRZ77VG2A8FTIEanuyUYXe8Ili2rjseGJAK7Od+dHzsg6ux7LQfR6NRkWqzyskYK34Ltychbanpc8T VF9ugDk3 oZBYPym57CYsPDP9YRPbDL+HguHXDfoOc9VVBqhGkCpjAilSHBkODh+gHgqytdh2Naxk/HOJ3Q1ZUshQ4OMTkNARgnqLr9Pw9r2i/11Zl98lmc1WawkY0CBNiDOdZWqj3bRD9ppSaK+bHBag9dwXBqrKF9ZNZRArBBo36byqRcYubGgjUJ4M6zRFTVxiXNAcU2xE+OF75enEHjdGEuW8L3TUc/yu+8IMJlsPJJa1VN4YDVvlAbAa6ArQ6H/nhFBu3WsLi53EBuzCMb71QBwDdgttY64X/9HpHWq1D1f8OXZsdEVzLxG3dPcks/uvyIzTnIpdy X-Bogosity: Ham, tests=bogofilter, spamicity=0.000045, 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 Wed, Oct 23, 2024 at 2:00=E2=80=AFPM Andrew Morton wrote: > > On Wed, 23 Oct 2024 10:07:58 -0700 Suren Baghdasaryan = wrote: > > > To simplify later changes to page tag references, introduce new > > pgtag_ref_handle type. This allows easy replacement of page_ext > > as a storage of page allocation tags. > > > > ... > > > > static inline void pgalloc_tag_copy(struct folio *new, struct folio *o= ld) > > { > > + union pgtag_ref_handle handle; > > + union codetag_ref ref; > > struct alloc_tag *tag; > > - union codetag_ref *ref; > > > > tag =3D pgalloc_tag_get(&old->page); > > if (!tag) > > return; > > > > - ref =3D get_page_tag_ref(&new->page); > > - if (!ref) > > + if (!get_page_tag_ref(&new->page, &ref, &handle)) > > return; > > > > /* Clear the old ref to the original allocation tag. */ > > clear_page_tag_ref(&old->page); > > /* Decrement the counters of the tag on get_new_folio. */ > > - alloc_tag_sub(ref, folio_nr_pages(new)); > > - > > - __alloc_tag_ref_set(ref, tag); > > - > > - put_page_tag_ref(ref); > > + alloc_tag_sub(&ref, folio_nr_pages(new)); > > mm-stable has folio_size(new) here, fixed up. Oh, right. You merged that patch tonight and I formatted my patchset yesterday :) Thanks for the fixup. > > I think we aleady discussed this, but there's a crazy amount of > inlining here. pgalloc_tag_split() is huge, and has four callsites. I must have missed that discussion but I am happy to unline this function. I think splitting is heavy enough operation that this uninlining would not have be noticeable. Thanks!