From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by smtp.subspace.kernel.org (Postfix) with ESMTP id E51D74DA9A0; Tue, 22 Sep 2026 17:13:28 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=217.140.110.172 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1790097211; cv=none; b=U+qdgkYAAmg1RujtFLNRP7AluNfd4iuN0xs1KLQQw2ZH/J0jwUmgU9xqXUFl9h59G5xI2dWPqK8E97t+NgeQl2C4uDfSOP4HHzOX313IVjV5ROmU/OEq4CoDNJ/I7JGb3EBAPLT/24hAXmYY9J0JNMn4wWh1aS6BjJ5pLWYvRAE= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1790097211; c=relaxed/simple; bh=A5NzDbD1noDwzYUVi8ldHdR4UZ15jpqj+KvUR0EDrHw=; h=From:Date:Subject:MIME-Version:Content-Type:Message-Id:References: In-Reply-To:To:Cc; b=oPhb+lFbqooYbrWPSybyDhVCG4UgmtLmHCJZybsanWh2QSJDjFEu6htoX0WEhII+ec4w2GHfXtYLmR2igS6fIifi3Zkpqrl8Qwd4WZT2OZs3/UHh0fUtXb/obTWu9AyduAXM5hB7AReIkTANmQWq4I7J99yjb8XBYAve10n8ARs= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com; spf=pass smtp.mailfrom=arm.com; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b=igT401m5; arc=none smtp.client-ip=217.140.110.172 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=arm.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.b="igT401m5" Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id B15341576; Tue, 22 Sep 2026 10:13:24 -0700 (PDT) Received: from [127.0.1.1] (e142334-100.cambridge.arm.com [10.2.198.93]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 742013F86C; Tue, 22 Sep 2026 10:13:15 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=arm.com; s=foss; t=1790097208; bh=A5NzDbD1noDwzYUVi8ldHdR4UZ15jpqj+KvUR0EDrHw=; h=From:Date:Subject:References:In-Reply-To:To:Cc:From; b=igT401m5Ukd+3+6wB+UgkDK63LspXcTemyvQIbaw1+BgwuYsVHrX2DMhqhgHk3LXY kHy/IQiBkermaVeOcybtnCdoQu7KcLnO6cNeXQ+B00DQhjxLMdA8FG5xp3QHrnYKlq HpbAzdd9QkzACrgJ3YINIW0HcgeXtIyLmi4yHh8c= From: Muhammad Usama Anjum Date: Tue, 22 Sep 2026 18:12:30 +0100 Subject: [PATCH v3 2/9] mm: rename pointers to software PTE values as ptentp Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Message-Id: <20260922-pte0-v3-2-5670b8cb9059@arm.com> References: <20260922-pte0-v3-0-5670b8cb9059@arm.com> In-Reply-To: <20260922-pte0-v3-0-5670b8cb9059@arm.com> To: Andrew Morton , David Hildenbrand , Lorenzo Stoakes , "Liam R. Howlett" , Vlastimil Babka , Mike Rapoport , Suren Baghdasaryan , Michal Hocko , Xu Xin , Chengming Zhou , Jann Horn , Muchun Song , Oscar Salvador , Pedro Falcato , Arnd Bergmann , Will Deacon , "Aneesh Kumar K.V" , Nick Piggin , Peter Zijlstra , Pasha Tatashin , Rik van Riel , Harry Yoo , Lance Yang , Chris Li , Kairui Song , Kemeng Shi , Nhat Pham , Baoquan He , Barry Song , Youngjun Park , Uladzislau Rezki , Steven Rostedt , Masami Hiramatsu , Mathieu Desnoyers , Alexei Starovoitov , Daniel Borkmann , Andrii Nakryiko , Eduard Zingerman , Kumar Kartikeya Dwivedi , Martin KaFai Lau , Song Liu , Yonghong Song , Jiri Olsa , Emil Tsalapatis , Ihor Solodrai , Ingo Molnar , Arnaldo Carvalho de Melo , Namhyung Kim , Mark Rutland , Alexander Shishkin , Ian Rogers , Adrian Hunter , James Clark , SJ Park , "Matthew Wilcox (Oracle)" , Jan Kara , Jason Gunthorpe , John Hubbard , Peter Xu , Leon Romanovsky , Zi Yan , Baolin Wang , Nico Pache , Ryan Roberts , Dev Jain , Usama Arif , Kiryl Shutsemau , Andrey Ryabinin , Alexander Potapenko , Andrey Konovalov , Dmitry Vyukov , Vincenzo Frascino , Miaohe Lin , Naoya Horiguchi , Matthew Brost , Joshua Hahn , Rakie Kim , Byungchul Park , Gregory Price , Ying Huang , Alistair Popple , Dennis Zhou , Tejun Heo , Christoph Lameter , Johannes Weiner , Qi Zheng , Shakeel Butt , Axel Rasmussen , Yuanchu Xie , Wei Xu , Jani Nikula , Joonas Lahtinen , Rodrigo Vivi , Tvrtko Ursulin , David Airlie , Simona Vetter , Juergen Gross , Stefano Stabellini , Oleksandr Tyshchenko Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, linux-fsdevel@vger.kernel.org, linux-arch@vger.kernel.org, linux-trace-kernel@vger.kernel.org, bpf@vger.kernel.org, linux-perf-users@vger.kernel.org, damon@lists.linux.dev, kasan-dev@googlegroups.com, intel-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org, xen-devel@lists.xenproject.org, Muhammad Usama Anjum X-Mailer: b4 0.16.0 Some interfaces use pte_t * for a software PTE value rather than for an entry stored in a PTE table. These pointers must remain pte_t * when pointers to PTE table storage are converted to hw_pte_t *. Rename these parameters in the install_pte callback, write_protect_page(), and guard_install_set_pte() to ptentp. The later Coccinelle conversion skips pointers named ptentp, allowing it to convert the remaining PTE table pointers without changing these interfaces. Some functions already use ptentp for such pointers, including: - madvise_folio_pte_batch() - folio_pte_batch_flags() No need to rename them. This patch only renames parameters and makes no functional change. Acked-by: David Hildenbrand (Arm) Signed-off-by: Muhammad Usama Anjum --- Changes since v1: - Rewrite the subject and description to distinguish software PTE values from PTE table storage. Changes since RFC v1: - Update the description for the architecture opt-in conversion. --- include/linux/pagewalk.h | 2 +- mm/ksm.c | 4 ++-- mm/madvise.c | 4 ++-- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/include/linux/pagewalk.h b/include/linux/pagewalk.h index b41d7265c01bc..c34d826c5e4a2 100644 --- a/include/linux/pagewalk.h +++ b/include/linux/pagewalk.h @@ -89,7 +89,7 @@ struct mm_walk_ops { struct mm_walk *walk); void (*post_vma)(struct mm_walk *walk); int (*install_pte)(unsigned long addr, unsigned long next, - pte_t *ptep, struct mm_walk *walk); + pte_t *ptentp, struct mm_walk *walk); enum page_walk_lock walk_lock; }; diff --git a/mm/ksm.c b/mm/ksm.c index 624f37975e129..2a4f19fe0f696 100644 --- a/mm/ksm.c +++ b/mm/ksm.c @@ -1292,7 +1292,7 @@ static u32 calc_checksum(struct page *page) } static int write_protect_page(struct vm_area_struct *vma, struct folio *folio, - pte_t *orig_pte) + pte_t *ptentp) { struct mm_struct *mm = vma->vm_mm; DEFINE_FOLIO_VMA_WALK(pvmw, folio, vma, 0, 0); @@ -1371,7 +1371,7 @@ static int write_protect_page(struct vm_area_struct *vma, struct folio *folio, set_pte_at(mm, pvmw.address, pvmw.pte, entry); } - *orig_pte = entry; + *ptentp = entry; err = 0; out_unlock: diff --git a/mm/madvise.c b/mm/madvise.c index 73c2901b9adbf..dd75a673e108f 100644 --- a/mm/madvise.c +++ b/mm/madvise.c @@ -1113,12 +1113,12 @@ static int guard_install_pte_entry(pte_t *pte, unsigned long addr, } static int guard_install_set_pte(unsigned long addr, unsigned long next, - pte_t *ptep, struct mm_walk *walk) + pte_t *ptentp, struct mm_walk *walk) { unsigned long *nr_pages = (unsigned long *)walk->private; /* Simply install a PTE marker, this causes segfault on access. */ - *ptep = make_pte_marker(PTE_MARKER_GUARD); + *ptentp = make_pte_marker(PTE_MARKER_GUARD); (*nr_pages)++; return 0; -- 2.47.3