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 CA1DCEB64D7 for ; Tue, 20 Jun 2023 19:54:50 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3CE1B8D0002; Tue, 20 Jun 2023 15:54:50 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 37E298D0001; Tue, 20 Jun 2023 15:54:50 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 21E8B8D0002; Tue, 20 Jun 2023 15:54:50 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 122258D0001 for ; Tue, 20 Jun 2023 15:54:50 -0400 (EDT) Received: from smtpin28.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id CEF921205EC for ; Tue, 20 Jun 2023 19:54:49 +0000 (UTC) X-FDA: 80924179098.28.657AD44 Received: from mail-yw1-f172.google.com (mail-yw1-f172.google.com [209.85.128.172]) by imf09.hostedemail.com (Postfix) with ESMTP id 027AF14000B for ; Tue, 20 Jun 2023 19:54:47 +0000 (UTC) Authentication-Results: imf09.hostedemail.com; dkim=pass header.d=google.com header.s=20221208 header.b=GnK6zVkt; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf09.hostedemail.com: domain of hughd@google.com designates 209.85.128.172 as permitted sender) smtp.mailfrom=hughd@google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1687290888; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=IiBraH1gFEtLq0Kn5mTuDR7eletLpb8dAh5y2pzul9A=; b=TPkbJVcp5BcP3kTNlYWkWlO0dXO1zmY6Pd01Ie8cT2hfR81lWM0oP1kapu5MaIllTo2WYf a5iadW5yvg54vM6bNERi7EYDVe8C0/vfXd/AtzUKYzGfGGFs8S+CED9OfVec1bmmVMjmL2 qBRDyj1f0Gse14SMg85xbi+Xl3Wiuuw= ARC-Authentication-Results: i=1; imf09.hostedemail.com; dkim=pass header.d=google.com header.s=20221208 header.b=GnK6zVkt; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf09.hostedemail.com: domain of hughd@google.com designates 209.85.128.172 as permitted sender) smtp.mailfrom=hughd@google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1687290888; a=rsa-sha256; cv=none; b=T+Dx31wdGoQWXfFCAIZDmnRk/h3CmcMDmYXnGXjg0CoDKTiVRFnnyeGwcz45xzM69jN5Zh Mq68YrkzddbVaAjmQZkOT3ClwRxB9syMR4E0LFxtqRKtly4NjLvN+XR+VMvQivyNsxh4yV MC3wyS8a8xP+cQvNsQmVLrN29xzlMIo= Received: by mail-yw1-f172.google.com with SMTP id 00721157ae682-5700401acbeso55600167b3.0 for ; Tue, 20 Jun 2023 12:54:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20221208; t=1687290887; x=1689882887; h=mime-version:references:message-id:in-reply-to:subject:cc:to:from :date:from:to:cc:subject:date:message-id:reply-to; bh=IiBraH1gFEtLq0Kn5mTuDR7eletLpb8dAh5y2pzul9A=; b=GnK6zVktB4fTweKikYzUukoKZGCmVusKP/x6uUrsa1IZh7Lcf11VRj9767YwL28zyx J4JKcGvTfTr/LvFgYj5pm1tfEFEJ8PKkMTUvowkeEnkdtgmC9135h58fxQzErHTduUCX +m+UG/mn18iCUxOKOQQ3TboQqPdTC4trrhg3CdFjun1ZClZ8tNP63vy0pMK4T8o5rwHN Ev/CkGwjSSWdgG/b37eVTxoy7CA9K7VH5ECYT9iqlmvWSv+gngjFQijyE1bOMwoZXb/s MCqGmsFWL/xCVoRj8nY9T1uCu7dqqcS1sL95WKPUvtYF9Sc63RHc6WC/aK2yPQNdgDcy QIWA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687290887; x=1689882887; h=mime-version:references:message-id:in-reply-to:subject:cc:to:from :date:x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=IiBraH1gFEtLq0Kn5mTuDR7eletLpb8dAh5y2pzul9A=; b=G0Y4fz9nAmm1b/ZIxm3oX95GHGRbqB5Ot5QUkENdjLCvifugYn7/I1zyjkeDEZnXKt tdfDh5cYCJ4OI4lZn1BXfnW52s1DoA2qu1gu4QE+eWsTOFY44/swj38sN2Ri7Ticn74Y ZerJo8tdWOs1AyH45Ou8SSmKqR1o8NCuFQqE0uFGMDcu+qQyaqNbJPxIijsY5i93ZLeI +c+F/jD8dVKTNde8z2/+lteb38m/Hn9AI+C7fMWeQvUjZM+o/dfx3mz/Ppzto0Ev9+CI 5dcAUPQMBkUAlWiVmgpCP4RBaRDOQlR+qOx/8wkSd99Vb641dFgC3A8u4VpddruNcjpU MYhQ== X-Gm-Message-State: AC+VfDxNz1OrWVwxRDblm6RoVsF84QAPaqx9gGxV0clMoNl+OxETRJoX nUberhye2QQtSnYEGRaSwWkodA== X-Google-Smtp-Source: ACHHUZ5CjW+DD7ghkPvVJFGUBN1BQG+qQA/ISq9t6lWLEboPHQzho8N1caYYSPmYBruWUqH6Cq9/Mw== X-Received: by 2002:a0d:d106:0:b0:56d:45ec:2e64 with SMTP id t6-20020a0dd106000000b0056d45ec2e64mr14660924ywd.43.1687290886830; Tue, 20 Jun 2023 12:54:46 -0700 (PDT) Received: from ripple.attlocal.net (172-10-233-147.lightspeed.sntcca.sbcglobal.net. [172.10.233.147]) by smtp.gmail.com with ESMTPSA id n20-20020a819e54000000b005705cbba0bcsm649525ywj.98.2023.06.20.12.54.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 20 Jun 2023 12:54:45 -0700 (PDT) Date: Tue, 20 Jun 2023 12:54:25 -0700 (PDT) From: Hugh Dickins X-X-Sender: hugh@ripple.attlocal.net To: Jason Gunthorpe cc: Hugh Dickins , Andrew Morton , Gerald Schaefer , Vasily Gorbik , Mike Kravetz , Mike Rapoport , "Kirill A. Shutemov" , Matthew Wilcox , David Hildenbrand , Suren Baghdasaryan , Qi Zheng , Yang Shi , Mel Gorman , Peter Xu , Peter Zijlstra , Will Deacon , Yu Zhao , Alistair Popple , Ralph Campbell , Ira Weiny , Steven Price , SeongJae Park , Lorenzo Stoakes , Huang Ying , Naoya Horiguchi , Christophe Leroy , Zack Rusin , Axel Rasmussen , Anshuman Khandual , Pasha Tatashin , Miaohe Lin , Minchan Kim , Christoph Hellwig , Song Liu , Thomas Hellstrom , Russell King , "David Sc. Miller" , Michael Ellerman , "Aneesh Kumar K.V" , Heiko Carstens , Christian Borntraeger , Claudio Imbrenda , Alexander Gordeev , Jann Horn , Vishal Moola , Vlastimil Babka , linux-arm-kernel@lists.infradead.org, sparclinux@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-s390@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org Subject: Re: [PATCH v2 05/12] powerpc: add pte_free_defer() for pgtables sharing page In-Reply-To: Message-ID: <2ad8b6cf-692a-ff89-ecc-586c20c5e07f@google.com> References: <54cb04f-3762-987f-8294-91dafd8ebfb0@google.com> <5cd9f442-61da-4c3d-eca-b7f44d22aa5f@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII X-Rspamd-Queue-Id: 027AF14000B X-Rspam-User: X-Rspamd-Server: rspam05 X-Stat-Signature: 7bm59wrzhoumpeizggea8tfo1ewahtj6 X-HE-Tag: 1687290887-765279 X-HE-Meta: U2FsdGVkX1+fAmrU7qqzaEl3Z6ENiVoVFqUv8TH34dBY7Kl73ifkhFrW7YJsNytd4w1VKgS+bC7MJXaWWOxN5BxuicrS/4hxfGZBaDcbmrnsfUvzNyitaHfWeS+N6x7J+yXusPd35hV8FS2U4Jacs8gek/5KS+Dx93W6s5HbVxHnaAS6eG9n23uLLlzjFg2ZAbWsuAniqcPZQgTSQ+0rCbW86c+MfWcoG8nGcBHEiApxcdpiDCHam9/+uGmYdph3YlHN+dQO3YY/4KXaGX6QKb6+R5JtAyBCbtSp/qiv0s9TnOSxVKZ4Z4btplnP7TZWHFyIAhkC4pJgd8WdCE3W2XH+tUeUnrKvXd8yKN7oLN8MdoirZyWIcCNWAGPoz+xmse+wurt0RtuU9tY+RPbo+cfimu2yZzOpdAe01kSORmJ6sNieiuzQqnAwmAVjMqbgXR/QhV4iqSO6MkDtB7fRC2xwPkHXHWJ0Mt02yZCiqLzS43W3zkuqS7wSs2zZVNOxpKQ3FIPTQ1ObGgu2zn+fz4UfeUHZ3Xbg19gxrxlwfq5WA0dWCelELtK8hp0a5InQTTjKS2X4LvC0Lq6nv95DzkhEZNd5eKOIbBkRtWTp3zezN8qcQEa4sXmnwRpaIz/zIfoRgfEa9fbr7rCYEIU+e+PSheXH1+dSkNiBLstSdNaHB+gmri6R0PLyLEI7JZGf7TfKbdfwFlCP3e0svXAw9JKVyiJ7XHHYfSm04oZIhgr7tPK51SS5hwLA8BKA2cIEXlUjAM+ObBcGCmMG5KpTMw14K/nlWdItjCTHFnUfqs0CEmZ3hoBH6STb17a5mmKJ+RVGv3S/Cx3V0qlKa+fAFpFZKMmmmR35NSbUmeAR5p+ezAwip4oV1xnA4QHDY/8tlaGWo358IOw561mKcTfZ2HbJdRCTcRCJCtgZ9CD2TsaGa004Wwv/uHJ/HOfnsgepDzls3+TCJA0jh4H2BVj FlLqXxpc c+3Om5wftSsIBi4FS7mkQ3e4vyym0GlvVXvcn/vRERwbhsNf4OtRN4rXnGMBorlRihnqrjV662NRK814q/B3idieWV470K3rwctvkRfuVWfrKZY2U7444EVNm+RJB+hxjOWZ0eVoRa2vjD/SQrmqHhfemB2adP5x5lmIV1Yzb9JJAqdI6xAdW3bgIAcC+wdnNC5x6Y2qEmxYwFLOCnJAJUChBtDWwJuPZVB3SYAn9nCauA5EJFj6RqGuMRIdbtuW6eCpyWPpW1KtpJM/r0xser4ZvZR3+2ffriYh1jHrMG/+ILw7bWasAPHd1wC6x/IUq1lTzjnOKCwzR+GFrZeOS8xazjrOe/0y4Suy9tHlL3Zu2li8q9LnkS0fT+r0wdWRTYfRokzi2TwLXvKFsgQ+QpExM3hwaqAuYBYv0cTZiQX9SzmUt5u+sCISq0L2JcmZRtRj6VXknjk9bHY7nN0tYA0FYZksacHPdEWoSOS7vmW1i3geGQL4y9CJMiwFt/uFC1nBPX28Ae8es5cIvibCYVP+4HbpRXi9pWFBQi0V8i2UVOEHsiNa9kVoJKw== 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: On Tue, 20 Jun 2023, Jason Gunthorpe wrote: > On Tue, Jun 20, 2023 at 12:47:54AM -0700, Hugh Dickins wrote: > > Add powerpc-specific pte_free_defer(), to call pte_free() via call_rcu(). > > pte_free_defer() will be called inside khugepaged's retract_page_tables() > > loop, where allocating extra memory cannot be relied upon. This precedes > > the generic version to avoid build breakage from incompatible pgtable_t. > > > > This is awkward because the struct page contains only one rcu_head, but > > that page may be shared between PTE_FRAG_NR pagetables, each wanting to > > use the rcu_head at the same time: account concurrent deferrals with a > > heightened refcount, only the first making use of the rcu_head, but > > re-deferring if more deferrals arrived during its grace period. > > You didn't answer my question why we can't just move the rcu to the > actual free page? I thought that I had answered it, perhaps not to your satisfaction: https://lore.kernel.org/linux-mm/9130acb-193-6fdd-f8df-75766e663978@google.com/ My conclusion then was: Not very good reasons: good enough, or can you supply a better patch? Hugh > > Since PPC doesn't recycle the frags, we don't need to carefully RCU > free each frag, we just need to RCU free the entire page when it > becomes eventually free? > > Jason