From nobody Tue Dec 16 16:40:53 2025 Received: from mail-pg1-f173.google.com (mail-pg1-f173.google.com [209.85.215.173]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D0AC62957C2 for ; Thu, 11 Dec 2025 08:11:22 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.215.173 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765440684; cv=none; b=uZDALa1TWwbvL9VXx/fM5hqKLliePuIrNDHUaA+RIVw73BRclrWxd/Oq3a2p7PLo8dwLE9DA+58lazXlFGyBk6EXje2hvEMFyncI1leP5xXAeEDMzlgUHd2j21HfbtzUNZ8ktJfqTrghTEoELdIkj4aaAvfgJjOk0DkZBM7poK8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765440684; c=relaxed/simple; bh=owYCMXAgmRtjv/y3+nIqRLD6e64O+vtwARl9Dqpk/As=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=N2MDcjHfFkomkpELr8zgngI67EP+7SMjVukgYCUOJapGeS/H8GgA3GtYl//lN/ycEmLVtr5/fk/LRf6TULsLMEWx8+1GLZWbc+Rw0OPT2MD/7EFiZjCn3evb+ECpW5dgYNYFRl6wnRmwbx8f3J2OREowJJkSs8DUeYUrLNKF8f0= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=sifive.com; spf=pass smtp.mailfrom=sifive.com; dkim=pass (2048-bit key) header.d=sifive.com header.i=@sifive.com header.b=CrmTH3n2; arc=none smtp.client-ip=209.85.215.173 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=sifive.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=sifive.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=sifive.com header.i=@sifive.com header.b="CrmTH3n2" Received: by mail-pg1-f173.google.com with SMTP id 41be03b00d2f7-c075ec1a58aso464788a12.0 for ; Thu, 11 Dec 2025 00:11:22 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sifive.com; s=google; t=1765440682; x=1766045482; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=YNQZnTQ0626Obvsj0xN2Cn7Wp4q2P4JXSbnrSwkFkdw=; b=CrmTH3n2OuJQ669xUaF8cLJRvhBImA4Y3ja66Yv79BQT/Tk1rLUw7rt4QuQ8jYusJk cQZMErwEz4ZFtNuHzA5evG0DBsAHkfCaX5eiKZTXiVKz6N3dpmXzrtYCs7Qws5By8oAv DCbPo1/uo9I/fIa1pxf6k7Vv+Bf0yfcZndvLdV0c7KS8DGN2efxJyn4nsUqAmwt8GMRG sDlD1KuuO9xV/P3PihN5MyJjtorlMMDklaDcUVyUPXlRC5xu9JQT0iidv72z5zY3BKl9 FEk0weqgWk50Pp2FrfgRRP4EfGiDD49OCx6Bz0gA9Jv1fPRKNTIdvL9XELIQSfapRzMg 7GUg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1765440682; x=1766045482; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=YNQZnTQ0626Obvsj0xN2Cn7Wp4q2P4JXSbnrSwkFkdw=; b=dKV+hPJ21seu84mZOk+tngC9w/huPiHjyktYB2Yugok7B5qsQXzR1limNUs2dBeM/S ggfidPMNbI7glP3EKk7J+t9/4FLTU+e7tVcCxRsTXXm+qLIqNiNC/MLsQXSk5ZcEIG0o shDC/i3l9xxlaXOPTIQnp07Qc35mHKI5Bu9OMvt/tVH/RJ5vat2m5CwnYArab6Yipms6 c4txCFU9/1y2+edrabVY/0kxUa8QQfvBZWb1FmZPcsIttKQYbB8BbTHx++3mQm328pff xtz0yDcQGvzILxT+b0ThBYQab5iJQBml+T4auAxiKMplcQ7oqmI7JIeNTA0obtXAAMep jI/A== X-Gm-Message-State: AOJu0YzpHAFeTNKSWj5GLaraAAZs2vcUQNPPkGVqlGnEFkezIyVx2gdt dTIZgeOvurLev2LJ7yQE7QPXlMwFuWoUR5u6y36QfxNFG3I1rwuLkVJNpSb2LrIdC44= X-Gm-Gg: AY/fxX5L+l/Od1soyJTwdwTR50qEEUy+326uOA/PuVh8vohLsVGLGIkGma7/SNwxxqn j4Wuku+na6e4JAPhsHIkgVI1baAF65vfLv4FZ0ooeC2DXJEJ/1oZEUxFvTlBV6oDpx40XSs7nfD rhSasbuXCzDHWtTHwoLroL5vH74zOB8/v4SlZrmEykGpaUo2sAv8/qeC1YhuUYN/CvvtU1uVy6e v6Unv0DVvO6UNoh8jcNawQEuTPNCHgBT9LYF4KkydDNqLqT2aPyCoxOBh7Hs2IfEDzHNXcK11mI 5coPFEvf57Goz23G99WXy2RaUlFFaKGaWEEN0DImCIlmHWUGV8abKnPJPDE1WlMa+4LQCULfJrF xKu2uXlntzd+YmUC7HiKKDGnY3oIrQnC72aDyqRIEItG2olsqfwPxgD9qltAU8H4MUgE8kuRf7Y iIAGyVCxhC5OGTD0hiAu9y9A+DemZ1CESy X-Google-Smtp-Source: AGHT+IFPgoEnNZyGUJk1reAfEp0MPmaNRO1jxIqJ9m+UBwVTWL0d3lGmxqCZdPWFumUC8Zzv5D9+Mw== X-Received: by 2002:a05:693c:40d2:b0:2a4:3592:c612 with SMTP id 5a478bee46e88-2ac05597433mr3442194eec.35.1765440682152; Thu, 11 Dec 2025 00:11:22 -0800 (PST) Received: from sw06.internal.sifive.com ([4.53.31.132]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-2ac191e1eabsm3914759eec.4.2025.12.11.00.11.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 11 Dec 2025 00:11:21 -0800 (PST) From: Samuel Holland To: Andrew Morton , "Liam R . Howlett" , Lorenzo Stoakes , David Hildenbrand , Vlastimil Babka , Jann Horn Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, Ryan Roberts , Anshuman Khandual , Gavin Shan , Zi Yan , Samuel Holland Subject: [PATCH 1/2] mm/debug_vm_pgtable: Use set_pXd() to write page tables Date: Thu, 11 Dec 2025 00:11:11 -0800 Message-ID: <20251211081117.1126521-2-samuel.holland@sifive.com> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20251211081117.1126521-1-samuel.holland@sifive.com> References: <20251211081117.1126521-1-samuel.holland@sifive.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Generic code must always use the architecture-provided helper function to write page tables. Fixes: a5c3b9ffb0f4 ("mm/debug_vm_pgtable: add tests validating advanced ar= ch page table helpers") Fixes: c0fe07b0aa72 ("mm/debug_vm_pgtable: use struct pgtable_debug_args in= PMD modifying tests") Signed-off-by: Samuel Holland --- mm/debug_vm_pgtable.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mm/debug_vm_pgtable.c b/mm/debug_vm_pgtable.c index ae9b9310d96fd..8c7996d6c1f2a 100644 --- a/mm/debug_vm_pgtable.c +++ b/mm/debug_vm_pgtable.c @@ -445,7 +445,7 @@ static void __init pmd_huge_tests(struct pgtable_debug_= args *args) * X86 defined pmd_set_huge() verifies that the given * PMD is not a populated non-leaf entry. */ - WRITE_ONCE(*args->pmdp, __pmd(0)); + set_pmd(args->pmdp, __pmd(0)); WARN_ON(!pmd_set_huge(args->pmdp, __pfn_to_phys(args->fixed_pmd_pfn), arg= s->page_prot)); WARN_ON(!pmd_clear_huge(args->pmdp)); pmd =3D pmdp_get(args->pmdp); @@ -465,7 +465,7 @@ static void __init pud_huge_tests(struct pgtable_debug_= args *args) * X86 defined pud_set_huge() verifies that the given * PUD is not a populated non-leaf entry. */ - WRITE_ONCE(*args->pudp, __pud(0)); + set_pud(args->pudp, __pud(0)); WARN_ON(!pud_set_huge(args->pudp, __pfn_to_phys(args->fixed_pud_pfn), arg= s->page_prot)); WARN_ON(!pud_clear_huge(args->pudp)); pud =3D pudp_get(args->pudp); --=20 2.47.2 From nobody Tue Dec 16 16:40:53 2025 Received: from mail-pg1-f170.google.com (mail-pg1-f170.google.com [209.85.215.170]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id F3BFA26B08F for ; Thu, 11 Dec 2025 08:11:24 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.215.170 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765440686; cv=none; b=pYy/n3lkPSQQsxWPOaLCONjnIfa2W7zxAgcHKXypUmDnpEHKvKoQzYgL1Z4WqgBG/qt51tIoNcCvzTjlVRs52WOfbTuFuON/Yi2mdTD88U3O4O/jYXI6pgbWJfV6CQTwScLyVYssB6EizmZHTLzXbV7rqUHNNax6GqTHgTM1VB8= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1765440686; c=relaxed/simple; bh=iBtx7NrxFtN5PTfBvVceaATh/0e6vtZbqNmd0b6E6hI=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=IbHjKQSxw9AdQZ6tRfDS1RBy03A6WwLht41DTkk7ZGRE8HMsn8i9nJO/s1UVsrBlNHVHGAWukheo61k6KPZ8Z+/JB9+ykpRUgfnn5iKMWIBfGYY5HKdu4X+WXNrF/sI6BntF1pVKb/AyeAPNZ6RYf6CSZ8CJFy1+NNMfLoxOqqM= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=sifive.com; spf=pass smtp.mailfrom=sifive.com; dkim=pass (2048-bit key) header.d=sifive.com header.i=@sifive.com header.b=kRzPbLXq; arc=none smtp.client-ip=209.85.215.170 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=reject dis=none) header.from=sifive.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=sifive.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=sifive.com header.i=@sifive.com header.b="kRzPbLXq" Received: by mail-pg1-f170.google.com with SMTP id 41be03b00d2f7-bd610f4425fso406429a12.3 for ; Thu, 11 Dec 2025 00:11:24 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sifive.com; s=google; t=1765440684; x=1766045484; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=LzNYrbuZY36JAQQh5imy8mkydqOdZmFYwfkn43jP58E=; b=kRzPbLXqI4zx0MX6fmbFfXbI9B3j2trgajGYHC8fU+4o8dgBWJW0tAJ+qewqGHaJVB eunGuc0P7G6g27MyAUiT8+XDg4snNS5rj1jYxspPUMLv31gBKgmiPuB6ADgnpk9EeX4F VnUOpAdWJxXemQaQbzFCT1MLJb046vvfsWTCmASWO6P/MJZa6Wa7xBDwrhhUqWliuYXJ CFPV2w7aeFLz2O+AtOnq3ibJ7XCG8D7+dN4ap0teU4AJ4F/efiK65dtJwhD8g6fLM6KZ i1huQQ5xkkgF119rhPOhyyMUhwSWLsxQRT8GHQkti0FuD/ABdaTuUDVhQWCat996Gied 4ETA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1765440684; x=1766045484; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=LzNYrbuZY36JAQQh5imy8mkydqOdZmFYwfkn43jP58E=; b=vLo6usjmktd+xyuNgK3DFG2RllweufbojtJDYpfomeUxGSfXtTn0b8eCD4VOFc3+AC luyMYn/7gyBg07ubIILPuRBGC7K8KCrEu7yVxfrSkA/NACozA66yMsZZL0LQ60fDrO5d tpvhoySAR24fyEh752eyD8w8hPy3DfPgzWXOf+KD72bv/QT2mjEtxChjg3cXWb2fH8QB fJQ6FzjgkIWSBHQGxJc7n6/JvAjXfT+lWvRygOFMPrVe1OU8yPuYBtbii7gqPbtV0gFq Rz6czWX3kcTjbQSiUH+j7QUGPQoJGXniJJSDcWyH7VdmHkl0Z6H9b2LC3qILZMK+Jg9L bUpQ== X-Gm-Message-State: AOJu0Yx691O5GbWiRkMOpKVPvPsEHdePOOCqve0fwatL9BngD89sr9fw 9wcQM6ld7tWKbKo3ABqyRScvs9CStrjd5wERlsako+6un3IlIHHPLw2ZQvfsonMIsF0= X-Gm-Gg: AY/fxX58lKRryCiYPY6D0CnTXBl/k9du1gVwOMe74Ncx+KpyNrN2AnxQ8fUX5r8BsT2 iqZxKqbneeJXOrTdTyRdysy2H5SXVQWBjeMTF/RRYlVY7Z//wBorLufVzg3RUZCDX55Hv8KPkuO ScWK0Getj523gQN3Iq2iTBvnG4z7pkKaA/BQPwenaMrtPnoD6G7wcXjOrgC5oHtKiQOVNP/q5TB yHZzIuMjluvMNE8WV9q2Ngr/RsEC/K4MH5PkzCQ86LER26iicipl+ZSGgvTMjlYwm9pyNnVgIP3 JLseJjKXmHna6Kd0KxSuH2N4vrjcjySVD+0zZp7VqVwHJq3SO/WJSmOIT92lwcF5FIM7BwEc6KT LmXMQEDAoTD/MkkUlOrryFk6xh9aCfBr49SmjWw5cxS/nGoCU0Nbgbv01UnR1UMbf7PGEP2cZW/ Ji4tE9yHvEZ7scxJSvZHqLv7eFFCOG5SMV X-Google-Smtp-Source: AGHT+IFHPzzd6sVUY9r8dHLK5SJg48FpT/wSnCMD7YMCy0GX+GGxvZBK/Mp3ieFiPk7OwZJjH8oG6Q== X-Received: by 2002:a05:693c:8115:b0:2a4:3592:c5f3 with SMTP id 5a478bee46e88-2ac05449fdamr3000184eec.4.1765440684026; Thu, 11 Dec 2025 00:11:24 -0800 (PST) Received: from sw06.internal.sifive.com ([4.53.31.132]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-2ac191e1eabsm3914759eec.4.2025.12.11.00.11.22 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 11 Dec 2025 00:11:23 -0800 (PST) From: Samuel Holland To: Andrew Morton , "Liam R . Howlett" , Lorenzo Stoakes , David Hildenbrand , Vlastimil Babka , Jann Horn Cc: linux-kernel@vger.kernel.org, linux-mm@kvack.org, Ryan Roberts , Anshuman Khandual , Gavin Shan , Zi Yan , Samuel Holland Subject: [PATCH 2/2] mm/madvise: Use set_pte() to write page tables Date: Thu, 11 Dec 2025 00:11:12 -0800 Message-ID: <20251211081117.1126521-3-samuel.holland@sifive.com> X-Mailer: git-send-email 2.47.2 In-Reply-To: <20251211081117.1126521-1-samuel.holland@sifive.com> References: <20251211081117.1126521-1-samuel.holland@sifive.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" Generic code must always use the architecture-provided helper function to write page tables. Fixes: 662df3e5c376 ("mm: madvise: implement lightweight guard page mechani= sm") Signed-off-by: Samuel Holland --- mm/madvise.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mm/madvise.c b/mm/madvise.c index b617b1be0f535..4da9c32f8738a 100644 --- a/mm/madvise.c +++ b/mm/madvise.c @@ -1114,7 +1114,7 @@ static int guard_install_set_pte(unsigned long addr, = unsigned long next, unsigned long *nr_pages =3D (unsigned long *)walk->private; =20 /* Simply install a PTE marker, this causes segfault on access. */ - *ptep =3D make_pte_marker(PTE_MARKER_GUARD); + set_pte(ptep, make_pte_marker(PTE_MARKER_GUARD)); (*nr_pages)++; =20 return 0; --=20 2.47.2