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 44738C4332F for ; Thu, 29 Dec 2022 16:22:29 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 937008E0002; Thu, 29 Dec 2022 11:22:28 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 8BFCF8E0001; Thu, 29 Dec 2022 11:22:28 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 760258E0002; Thu, 29 Dec 2022 11:22:28 -0500 (EST) 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 61EC48E0001 for ; Thu, 29 Dec 2022 11:22:28 -0500 (EST) Received: from smtpin01.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay09.hostedemail.com (Postfix) with ESMTP id 26DF680121 for ; Thu, 29 Dec 2022 16:22:28 +0000 (UTC) X-FDA: 80295861576.01.6E56F2D Received: from mail-pj1-f52.google.com (mail-pj1-f52.google.com [209.85.216.52]) by imf22.hostedemail.com (Postfix) with ESMTP id 62878C0018 for ; Thu, 29 Dec 2022 16:22:25 +0000 (UTC) Authentication-Results: imf22.hostedemail.com; dkim=pass header.d=dabbelt-com.20210112.gappssmtp.com header.s=20210112 header.b=JyJ1Hotx; spf=pass (imf22.hostedemail.com: domain of palmer@dabbelt.com designates 209.85.216.52 as permitted sender) smtp.mailfrom=palmer@dabbelt.com; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1672330945; 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:dkim-signature; bh=Ec85AyiKc77bI9XsP5tX5lamemx/Nh18BP3PMc4R5sU=; b=2nVU57f+vkAZC/Jp9M/EGGFHOAFI/Xd7p94kgBRtAcyOcZ5N3GewOz4vJSKFmsv9yQEzV9 WaxRbVdrtNxvgRb6kAhmwb6xBd15/pGxXDklZr2078wy0ww4aNfPNlo5JoEr1VMiZZx9fp uiTxBo+R4+4/Z6FGGSukV23tG3Ioi4w= ARC-Authentication-Results: i=1; imf22.hostedemail.com; dkim=pass header.d=dabbelt-com.20210112.gappssmtp.com header.s=20210112 header.b=JyJ1Hotx; spf=pass (imf22.hostedemail.com: domain of palmer@dabbelt.com designates 209.85.216.52 as permitted sender) smtp.mailfrom=palmer@dabbelt.com; dmarc=none ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1672330945; a=rsa-sha256; cv=none; b=qocH4GxDXGqqEsMshCT0almPhu6UH8b/lCgyrwM0cvuQKWWNVBM2fQePxIR2SuXAD3HnbM W5TBxGw2GAGKPQJrDImy2BiC9iH9Dpm/wNaWBqbL7khXvFZH38XU4ZoS2WrAybkGpBg32y pC0NngcYsHSnhiT6nUVd6jWzb57KLPs= Received: by mail-pj1-f52.google.com with SMTP id o31-20020a17090a0a2200b00223fedffb30so19344079pjo.3 for ; Thu, 29 Dec 2022 08:22:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=dabbelt-com.20210112.gappssmtp.com; s=20210112; h=content-transfer-encoding:mime-version:message-id:to:from:cc :in-reply-to:subject:date:from:to:cc:subject:date:message-id :reply-to; bh=Ec85AyiKc77bI9XsP5tX5lamemx/Nh18BP3PMc4R5sU=; b=JyJ1HotxL5h5gP0PAUr+bSyy8u1zOFXKWz1ZfgSiQeQvzYRYtdYK5A29TTv7eUyBSq O6WUTpHiy10Kl0hHmRgy/d9fal5bMY/E/lNTQ2LCgCfG8iVu/uN6+Uj5ExC6mHOnsXiu 0ohB97kr44YJgmKniWXNLUoVi+8oVMmtdexytQrx6+rzrxhktuoTfzAedL35hCbYbn09 5yB5XsMVIjKdTNReT5H6YpQsO7a4nnDDcbUBIjnPH2H4vmdpB5S32Eq6ZsH3EXQnBVqu h/JxK+dWLoxFuxlgdjXCLEO7aHIvjXxyMe2Wjpx0m1kdrzxduQK6w3r0Q8wQ2fW6djA1 pXZA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=content-transfer-encoding:mime-version:message-id:to:from:cc :in-reply-to:subject:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=Ec85AyiKc77bI9XsP5tX5lamemx/Nh18BP3PMc4R5sU=; b=ZuD1/CXAFHY63qvy7ADUqiWi5Fmo5ofY1zZri4DItirDj+NIN68riqn/Lf92CDwM4x POu3GoEKxeVzRJwMf9ogHbaKZZ8XqXS3Yyh1CQhhce2uWe3Xgovnbrkie9iN6i/CpuNI e5oWZ3Qg8fhat0LKzQ2aQhhFyKR5Q1do4VIZmtizFg5Uo3Y9GRYmVOldMP+ofQrDEbEq Gj2t45oINaXztTe/oLUWUvBHytxAVuLxsO2ZvRVA4xrXq7/3HpQAkyPYmgLWrvcQIIty udVRNJB3pw7i8oYwTXYR5OY/rIXs9wmoejN8fxFBCb+pctk+6+qrwh900/zKhWbDbg5I xzoQ== X-Gm-Message-State: AFqh2koF/hg6P+ANEiEqMasopk/kKiT05tsFXWwk3YI6C4qe745MUUdp OnOiCzJfuqygliYZ7P5ckmXgacK/Jyg4ng4j X-Google-Smtp-Source: AMrXdXvdOJhcRsj0KUW218UKcAvJUd1l0xKIGxZQv8spR2kcI0qwBPtGX+cj507spyFm31HkJycFdg== X-Received: by 2002:a17:902:a981:b0:187:403c:7a3b with SMTP id bh1-20020a170902a98100b00187403c7a3bmr25977484plb.69.1672330943683; Thu, 29 Dec 2022 08:22:23 -0800 (PST) Received: from localhost ([135.180.226.51]) by smtp.gmail.com with ESMTPSA id o4-20020a170902bcc400b0019254c19697sm13000824pls.289.2022.12.29.08.22.23 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Dec 2022 08:22:23 -0800 (PST) Date: Thu, 29 Dec 2022 08:22:23 -0800 (PST) X-Google-Original-Date: Thu, 29 Dec 2022 07:51:42 PST (-0800) Subject: Re: [RFC PATCH] mm: remove zap_page_range and change callers to use zap_vma_page_range In-Reply-To: <20221216192012.13562-1-mike.kravetz@oracle.com> CC: linux-mm@kvack.org, linux-kernel@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, netdev@vger.kernel.org, david@redhat.com, mhocko@suse.com, peterx@redhat.com, nadav.amit@gmail.com, willy@infradead.org, vbabka@suse.cz, riel@surriel.com, Will Deacon , mpe@ellerman.id.au, borntraeger@linux.ibm.com, dave.hansen@linux.intel.com, brauner@kernel.org, edumazet@google.com, akpm@linux-foundation.org, mike.kravetz@oracle.com From: Palmer Dabbelt To: mike.kravetz@oracle.com Message-ID: Mime-Version: 1.0 (MHng) Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-Stat-Signature: y64cn1mb5fbpda3md6613weu3ugfg4uo X-Rspam-User: X-Rspamd-Queue-Id: 62878C0018 X-Rspamd-Server: rspam06 X-HE-Tag: 1672330945-5628 X-HE-Meta: U2FsdGVkX1+mWjYCG7tzFrjzQHtnjqTF62njgSAp3wszbVIK0fx7qyAiLZRvmioDsxIWLb4epqkmQxkz4/BouU8QHWX0A06CCDmrHJuOA2R+CwbvxEU8Uy3qPxjQYGreJJete+Y6QkeMzooxeT4i/IUVKzBlqH2stnw4mxtrwNXh2vHjyWu4haZa2h13PK+KORiyi0/5em8cERqM3UTTW1f5ySOO1BM14/gfieJlepBhV7SfLpbF+IvWKnlfi+NPm8KSAxH02F8k11OLGjDWQ+NBoAX4SFeKT37oMnZeOauYrE85L8nxyh4HOCqRtRSbd8sTdSrOXIIiJTZv1T66KxByOD7lynPQJVZwrnnYcxEB9GDn38bPZ65cmCE7p8QNHQLtGCuCgcxk7r/T6dflDY3r2kPQFUwjZM3YyV2NiewXl/jYazKTy4OY/j2L3cewaCbeVcfBmKY/CJ2Qx0NfEf02DShrE7YJH26hyp5gfy8J20QLF4nQk7fDhOiiZVjVdB5UY/rty/YVL0MhffC7vyeIoIfUrErF/qbkbCW7R3hiapw22tyF96FDRpEZnpVSDa7qrzSX12pTCR+695fNxYsE8xHIsqrcn4dObbpDFPkOYDFytIpMiVRFBZt0IYlFToC4Tz3nIfId7kt5B7cvVKNV1aH2GEh1U3exH53qoBlEP3nwxJENVYGJUThg1bpxRH/FDHz2s9HTkHDP75fVx5xj2oecx3UrarZP0/tUKAYIgtiFp8GzAg5MC5j4RtDiXhAnijYd25C5d9q+oY47DyAMZOhoonLZ7UlRLNVE22JSkSCxz/BaELTguUjJdK4kAYZ2VEb9Na1r9vVE9dN79WZ/6a0dZrzlVAO8QU+n8VafhqZMbgNstzZYKIaEJxmp0g2C1S+yhUy/KBFUTHSXQaLd96Mw6LYEIxduECvsz6xX7NN5fqmG70SeTVL4dKVh+cQqiQL1ifZYGEVBbyV GVYtHeIp JW8WkSs5VydsC8YbYn1CS7fPvs1GAnQ/3MxVJ07bJiGl9hBuLJr6Lt9VCwPEfvbQLL+vWhefaL9VQt03M7U9bPCIAP3UnyQLiyfWHCZIUGWyGeaT6nFmyKodnAxuca4BoAGj0dknjTsxt64DL1hOn/fBXuaFShfaPG/NGdo6arNXY/+SElQ68V7Lu5ccqEvNtAQHB3zXzCIDsgmaHLKl5KpFpBLOCc5Gm+jGLMOgeHJkBXfPTNyh7hyYftzLk6H0BC9cC5W6kKt/DBTp2KDeGDOeq/A== 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 Fri, 16 Dec 2022 11:20:12 PST (-0800), mike.kravetz@oracle.com wrote: > zap_page_range was originally designed to unmap pages within an address > range that could span multiple vmas. While working on [1], it was > discovered that all callers of zap_page_range pass a range entirely within > a single vma. In addition, the mmu notification call within zap_page > range does not correctly handle ranges that span multiple vmas as calls > should be vma specific. > > Instead of fixing zap_page_range, change all callers to use the new > routine zap_vma_page_range. zap_vma_page_range is just a wrapper around > zap_page_range_single passing in NULL zap details. The name is also > more in line with other exported routines that operate within a vma. > We can then remove zap_page_range. > > Also, change madvise_dontneed_single_vma to use this new routine. > > [1] https://lore.kernel.org/linux-mm/20221114235507.294320-2-mike.kravetz@oracle.com/ > Suggested-by: Peter Xu > Signed-off-by: Mike Kravetz > --- > arch/arm64/kernel/vdso.c | 4 ++-- > arch/powerpc/kernel/vdso.c | 2 +- > arch/powerpc/platforms/book3s/vas-api.c | 2 +- > arch/powerpc/platforms/pseries/vas.c | 2 +- > arch/riscv/kernel/vdso.c | 4 ++-- > arch/s390/kernel/vdso.c | 2 +- > arch/s390/mm/gmap.c | 2 +- > arch/x86/entry/vdso/vma.c | 2 +- > drivers/android/binder_alloc.c | 2 +- > include/linux/mm.h | 7 ++++-- > mm/madvise.c | 4 ++-- > mm/memory.c | 30 ------------------------- > mm/page-writeback.c | 2 +- > net/ipv4/tcp.c | 6 ++--- > 14 files changed, 22 insertions(+), 49 deletions(-) [snip] > diff --git a/arch/riscv/kernel/vdso.c b/arch/riscv/kernel/vdso.c > index e410275918ac..a405119da2c0 100644 > --- a/arch/riscv/kernel/vdso.c > +++ b/arch/riscv/kernel/vdso.c > @@ -127,10 +127,10 @@ int vdso_join_timens(struct task_struct *task, struct time_namespace *ns) > unsigned long size = vma->vm_end - vma->vm_start; > > if (vma_is_special_mapping(vma, vdso_info.dm)) > - zap_page_range(vma, vma->vm_start, size); > + zap_vma_page_range(vma, vma->vm_start, size); > #ifdef CONFIG_COMPAT > if (vma_is_special_mapping(vma, compat_vdso_info.dm)) > - zap_page_range(vma, vma->vm_start, size); > + zap_vma_page_range(vma, vma->vm_start, size); > #endif > } Acked-by: Palmer Dabbelt # RISC-V Thanks!