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 B1857E7D0BB for ; Fri, 22 Sep 2023 01:37:21 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 4C5E76B0288; Thu, 21 Sep 2023 21:37:21 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 44E456B0289; Thu, 21 Sep 2023 21:37:21 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 2C7966B028A; Thu, 21 Sep 2023 21:37:21 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 1A1DB6B0288 for ; Thu, 21 Sep 2023 21:37:21 -0400 (EDT) Received: from smtpin08.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id D7DEB16055F for ; Fri, 22 Sep 2023 01:37:20 +0000 (UTC) X-FDA: 81262520640.08.41B053B Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75]) by imf16.hostedemail.com (Postfix) with ESMTP id 0BE5F18000E for ; Fri, 22 Sep 2023 01:37:18 +0000 (UTC) Authentication-Results: imf16.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=PNAAsjxZ; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf16.hostedemail.com: domain of sj@kernel.org designates 145.40.68.75 as permitted sender) smtp.mailfrom=sj@kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1695346639; a=rsa-sha256; cv=none; b=ayUsjyoa/oMTUdCmE/cRc+JnFsMN2ok3tYJlUxsSJELWQO/+2Ji2+amBBZBi6kE1DeFtXk GdJQCVnREaexEtKiwqWC3YWSWzA4coKaCXtKfafpw5u1b9oU2I5C4yc4XYBKVPtv3e/sAm 9dx8LbNFE139WgCZ+LDtGUN12Zh9eZg= ARC-Authentication-Results: i=1; imf16.hostedemail.com; dkim=pass header.d=kernel.org header.s=k20201202 header.b=PNAAsjxZ; dmarc=pass (policy=none) header.from=kernel.org; spf=pass (imf16.hostedemail.com: domain of sj@kernel.org designates 145.40.68.75 as permitted sender) smtp.mailfrom=sj@kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1695346639; 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=Iw9p+SEu2S1WjSUeJzrGQC466A/Q0XA+n0pDx3edO4c=; b=VowzpK1NNCJHNaOK1eud5cvyiIydQlbh40nNPUwUfMyuG04kqITkyVABelLjmPElmvbGZJ cnYeZOOm++WZ0j4EinvzCTQ1h3lHHWQVESht8dL9Q/WV3tt8PQUX87n09H5jqTLNcFZ670 Yrnh/5/uyjnVIPORf1kdgn/n71hm8kA= Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id 0642EB820DA; Fri, 22 Sep 2023 01:37:17 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 2723CC433C8; Fri, 22 Sep 2023 01:37:13 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1695346635; bh=zRyL223DT0AFJx1gaOEUn6WcLlX2Kysk+6Fs0mtLrOo=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=PNAAsjxZ/e5mSgGg/LPftlkbNKpcN/rnJGyJdb//w0VkNEAdvtPkglz83EUpi+iRP CUifgPcEfIXikkO8FSBVWAewa4zbTOyW/Yl5flrqUDllqJAE3SzG2kmjrjAZrmJDHo crbAM8SWYY+JnkBboXDn+/Qz7CHhlgXE7xG/2qP2x0dmB0tprvlPXeP9NzkYvk+r3s 0uxngMBI0XN0BvxVhCId+ACbyTDCZOXDjS5wdL3TxpEGcwtg23dBoXZkT0xPOs4c86 SSz1LUNN37N0YRjVtKgcGjRfXwPjXi9P2JOPVjrrrvT7bUtXub+Siisb+MvwlrdxSE a+KWdAyrmeGOA== From: SeongJae Park To: Ryan Roberts Cc: Will Deacon , "James E.J. Bottomley" , Helge Deller , Nicholas Piggin , Christophe Leroy , Paul Walmsley , Palmer Dabbelt , Albert Ou , Heiko Carstens , Vasily Gorbik , Alexander Gordeev , Christian Borntraeger , Sven Schnelle , Gerald Schaefer , "David S. Miller" , Arnd Bergmann , Mike Kravetz , Muchun Song , SeongJae Park , Andrew Morton , Uladzislau Rezki , Christoph Hellwig , Lorenzo Stoakes , Anshuman Khandual , Peter Xu , Axel Rasmussen , Qi Zheng , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-parisc@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, linux-riscv@lists.infradead.org, linux-s390@vger.kernel.org, sparclinux@vger.kernel.org, linux-mm@kvack.org, stable@vger.kernel.org Subject: Re: [PATCH v1 6/8] mm: hugetlb: Convert set_huge_pte_at() to take vma Date: Fri, 22 Sep 2023 01:37:11 +0000 Message-Id: <20230922013711.100278-1-sj@kernel.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230921162007.1630149-7-ryan.roberts@arm.com> References: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Rspam-User: X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: 0BE5F18000E X-Stat-Signature: a4r4ah98ywzuyiakkzp65te1gkqtjbtm X-HE-Tag: 1695346638-375649 X-HE-Meta: U2FsdGVkX1+BqmtgsQlMyDE5ofAt2l7XaAgfwtvaGRQnE5nBuTzGXomYE67omW0d6lrabuoeifRb1t3ATmHkktADuXF9+sNxAKELKEWKj+bVkhpejf8ht+VQOdiz6uOUx9tOtIUZdaf3xEYiJk+4PaUwvRz9y+k9DdrEI0MAJC3JVu8TlKonzjgLFxGJS3jTQzxkAduf+XeHwK0MMA/cBd3A9FyhpHNBPWbLtewSxyXqnxr7qb9WTrxrdi1qvNaqnfw12Ze8FnEaQ3n4qif7B1EoTkCvwC9zmI23OEwf3ZtXedpVWmQ6XhfQexovqyuT46Fah2yVXROYGF/EFvAu9TkQsIm4kusTAjpj/isTu0HzZ2ghswz69wVc5hOhjpDBHzXWua92A6k3jpSPVdTiMuWKxeMziDfrN1RJvyrJMy9+3Xpz5g6ooWtbpbJzLSXus+Q9XDPRU4QqDG9oUPhfWEZrNwYXohY92AhcHds2UInzralThSoDI2ioqNYfJO+AYzEAg/HOUdYUJiIyl7Ev+py5/nxiNDkQqsvbPrSDU3SShqBgRs0I66Xmyb6yGU3Ku1NNKK2IIB72YBYDANBExIFeAvzEz0mbHA9J6O0w5jwvfu99qmivnj1DSgSo1unvFOpLJBuljttftiVMphreI5PHZtxHetdmFbFNE6RuRo2xBCfKRBRq3+/+XbQ/UqOTRQaeefMGu0te61WoEusCI+l1X0qbDJnfE/TD5oQYL3CjSUFUb+ku2vVUzREZGbgHGLyLBTbC1Z2oDhe0zgDBnrp0zppQKSHUKGq2NLEDpizRZpC/00ggG7b9kKYlvbV4TMrga/VI/XPay4SwNGhGazlk/AvFeyd0VM9VebPC3W+tTrzw4sn0yV7tBH7gv5jZ2PKX3GtivgmLbShCRW4qmgnpsNIqrw6Jr1hWjO/+sPgv4f4THTSCxhD7Ub7fhPyBsjjwZsJNyoo1ZdM5vH2 q0dEE+49 tWaiHjQGEHH6Pse0bmRw/qxxmCs6HPStlvHAm05egCCMai2sOxAt6Rv3yOIJTvptRHVj0VqpIHUJ/DPXWx37xZQCOvvHHz/im9fkQvphbSxUqS1wx8n0uWtRtTENk0Cn//D5vIw5kHUNEzmz6m4QORpTKtJJF9IzrqQGZheE7ck/9dWu1/oBB7AbdN9nq6CtiFM7QUnbBUaJvlFGGr66FMvBoo7hNm3KU5OEUisJ0tMhPwe5qO3qctE3xFFP4g4J9yVV3e5tECujMh328J3wIxK6fgN3rVSKtNC7xeVqGAUkRQq/AUBx8iz+4pLuChGAncocEQsmdNFfaP1wSdTlIrrNvt1lNQtzOclkbEMe3VJnFG2s4O3v2vmTPmGKWCYyYYtHih3b5BXmPZ8JiD+9AdMkm8UyfKyfqu5jIGn01dNhN+3KYtfvQF5TcaNlo0UT/Va1X 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: Hi Ryan, On Thu, 21 Sep 2023 17:20:05 +0100 Ryan Roberts wrote: > In order to fix a bug, arm64 needs access to the vma inside it's > implementation of set_huge_pte_at(). Provide for this by converting the > mm parameter to be a vma. Any implementations that require the mm can > access it via vma->vm_mm. > > This commit makes the required modifications to the core mm. Separate > commits update the arches, before the actual bug is fixed in arm64. > > No behavioral changes intended. > > Signed-off-by: Ryan Roberts For mm/damon/ part change, Reviewed-by: SeongJae Park Thanks, SJ > --- > include/asm-generic/hugetlb.h | 6 +++--- > include/linux/hugetlb.h | 6 +++--- > mm/damon/vaddr.c | 2 +- > mm/hugetlb.c | 30 +++++++++++++++--------------- > mm/migrate.c | 2 +- > mm/rmap.c | 10 +++++----- > mm/vmalloc.c | 5 ++++- > 7 files changed, 32 insertions(+), 29 deletions(-) > > diff --git a/include/asm-generic/hugetlb.h b/include/asm-generic/hugetlb.h > index 4da02798a00b..515e4777fb65 100644 > --- a/include/asm-generic/hugetlb.h > +++ b/include/asm-generic/hugetlb.h > @@ -75,10 +75,10 @@ static inline void hugetlb_free_pgd_range(struct mmu_gather *tlb, > #endif > > #ifndef __HAVE_ARCH_HUGE_SET_HUGE_PTE_AT > -static inline void set_huge_pte_at(struct mm_struct *mm, unsigned long addr, > - pte_t *ptep, pte_t pte) > +static inline void set_huge_pte_at(struct vm_area_struct *vma, > + unsigned long addr, pte_t *ptep, pte_t pte) > { > - set_pte_at(mm, addr, ptep, pte); > + set_pte_at(vma->vm_mm, addr, ptep, pte); > } > #endif > > diff --git a/include/linux/hugetlb.h b/include/linux/hugetlb.h > index 5b2626063f4f..08184f32430c 100644 > --- a/include/linux/hugetlb.h > +++ b/include/linux/hugetlb.h > @@ -984,7 +984,7 @@ static inline void huge_ptep_modify_prot_commit(struct vm_area_struct *vma, > unsigned long addr, pte_t *ptep, > pte_t old_pte, pte_t pte) > { > - set_huge_pte_at(vma->vm_mm, addr, ptep, pte); > + set_huge_pte_at(vma, addr, ptep, pte); > } > #endif > > @@ -1172,8 +1172,8 @@ static inline pte_t huge_ptep_clear_flush(struct vm_area_struct *vma, > #endif > } > > -static inline void set_huge_pte_at(struct mm_struct *mm, unsigned long addr, > - pte_t *ptep, pte_t pte) > +static inline void set_huge_pte_at(struct vm_area_struct *vma, > + unsigned long addr, pte_t *ptep, pte_t pte) > { > } > > diff --git a/mm/damon/vaddr.c b/mm/damon/vaddr.c > index 4c81a9dbd044..55da8cee8fbc 100644 > --- a/mm/damon/vaddr.c > +++ b/mm/damon/vaddr.c > @@ -347,7 +347,7 @@ static void damon_hugetlb_mkold(pte_t *pte, struct mm_struct *mm, > if (pte_young(entry)) { > referenced = true; > entry = pte_mkold(entry); > - set_huge_pte_at(mm, addr, pte, entry); > + set_huge_pte_at(vma, addr, pte, entry); > } > > #ifdef CONFIG_MMU_NOTIFIER [...] Thanks, SJ